Python †

記事:


デバッグ方法 †


Pyarmor: スクリプトの難読化 †


venv/virtualenv †

記事:


最適化問題の解法 †

記事:


入門 †


ライブラリ †


module pathの表示 †


行末の改行の削除 †


簡易httpサーバ †


文字コード変換 †


CSV/TSVの処理 †


Polars: pandasより高速なデータ分析支援ライブラリ †

記事:


pandas: データ分析支援ライブラリ †

記事:


並列処理 †


Webスクレイピング †


Apache Parquet形式を扱う: 列指向のデータフォーマット †


書式付き文字列 †


memory-profiler: メモリ使用量の計測 †


dockerイメージ †


CLIツール作成 †


パフォーマンス/最適化 †


変数の型 †


パッケージ管理/バージョン固定 †

記事:


asyncio: 非同期実行 †


検証/Validation †


グラフ描画 †


ベンチマーク †


コーディング規約 †


構文チェック †

他言語のように構文チェック用のコマンドラインオプションは無いようだ。


Ruff †

記事:


autopep8 †

pip install pylint astroid --pre -U
pylint --generate-rcfile > ~/.pylintrc

pylint †

python -m source.py

-m †


バージョン間の互換性 †


テキストに色を付ける/エスケープシーケンス †


envを指定する時 †


subprocess : 外部コマンド実行 †


例外発生時にstack traceの表示 †


InsecurePlatformWarningの抑制 †


yamlの読み書き †


pudb: CUIだけどグラフィカルなデバッガ †

pythonデフォルトのデバッガはpdbだが、前後のソースコードが表示されないため、分かりにくい。
pudbはMain, Variables, Stack, Breakpoints画面に分割されるため操作しやすい。

コマンド説明
?ヘルプ
q終了
nステップオーバー
sステップイン
rリターン
bブレークポイント

pdb: 標準デバッガ †


httplib2でエラーが出た場合 †


autopep8: ソースコードを自動でPEP8形式に整形 †


モジュール一覧の取得 †

sudo pip install var_dump

var_dump: PHP風オブジェクトダンプ †

pprint()では文字列、数値、リストといった特定のオブジェクトしかダンプしてくれない。
PHPのvar_dumpはクラス内部の変数もダンプしてくれて便利だったので、似たようなものがあった。

WOL(Wake on LAN) †


isinstance : 変数の型を調べる †

sudo pip install ping
vim ping.py
----
import ping

print ping.verbose_ping("localhost")
----

sudo python ping.py

ping localhost with ... get ping in 0.0730ms
ping localhost with ... get ping in 0.0420ms
ping localhost with ... get ping in 0.0379ms
ping localhost with ... get ping in 0.0379ms

ping †


簡易ポートオープンチェック †


三項演算子 †

分岐して代入処理が1行で書ける


slappasswd互換の{SSHA}, {SHA}形式の生成 †

var1="foo"
var2="bar"
str=r"""var1={var1}
var2={var2}
{{str}}""".format(**vars())
print str

ヒアドキュメント中で変数参照 †


複数階層のディレクトリ削除 †


re: 正規表現 †


tempfile: 一時ファイル/ディレクトリ †


ヒアドキュメントの行頭スペースを削除 †

# -*- coding: utf8 -*-
import textwrap
-
if __name__ == '__main__':
    print '''\
default
message'''
    print '''\
        indent
        message'''
    print textwrap.dedent('''\
        textwrap.dedent
        message''')
# vim: ts=4 sw=4 expandtab

日付/時刻/タイムゾーン †


sys.argv : コマンドライン引数 †


logging †


特殊変数 †


ソースコードにUTF-8を使う †


has_key : 辞書側でキーを持っているかを調べる †

d = {'hoge': 100, 'foo':200, 'bar':300}
if d.has_key('hoge'):
    print 'hoge found!'

hasattr : 属性があるかどうかを調べる †


チートシート †

BASIC認証ページを取得 †

urllib.FancyURLopenerをオーバーライドしてID/PASSを返してやれば良い。

 import urllib

 class MyURLopener(urllib.FancyURLopener):
 	def prompt_user_passwd(self, host, realm):
 		if host == 'ホスト名':
 			return ('ID', 'Password')

 def execute(hdf, args, env):
 	opener = MyURLopener({})
 	f = opener.open('https://svn.example.com/projects/ppc/wiki/FctlPpc/mysql')
 	print f.read()
 	f.close()

 execute(1,2,3)

pyスクリプトをexe形式に変換 †

記事:


添付ファイル: fileexample-yaml.zip 2907件 [詳細]

トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2026-08-14 (金) 11:24:38