両方とも前のリビジョン 前のリビジョン 次のリビジョン 前のリビジョン python [2018/08/24 11:36] – [自作モジュール] mumeiyamibito python [2020/05/07 11:42] (現在) – [インストール] mumeiyamibito
* 対話的にプログラムができる (命令文のテストなどちょっと試したい時に最適) * 対話的にプログラムができる (命令文のテストなどちょっと試したい時に最適)
* その他、便利な特徴: [[http://webtech-walker.com/archive/2010/10/13191417.html | Python初心者によるPythonのいいところ、はまりどころのまとめ - Webtech Walker]] * その他、便利な特徴: [[http://webtech-walker.com/archive/2010/10/13191417.html | Python初心者によるPythonのいいところ、はまりどころのまとめ - Webtech Walker]]
===== インストール =====
* [[Python/anyenv を用いた Python のインストール方法]]
===== 構文 ===== ===== 構文 =====
* [[python/argparse | argparse]]: コマンドライン引数を解析するモジュール * [[python/argparse | argparse]]: コマンドライン引数を解析するモジュール
* [[python/Biopython | Biopython]]: アメリカの国立生物工学情報センターのデータベースにアクセスできる API モジュール * [[python/Biopython | Biopython]]: アメリカの国立生物工学情報センターのデータベースにアクセスできる API モジュール
* [[python/easygui]]: 簡単なダイアログを表示するモジュール (qt 版も含む)
* [[python/itertools | itertools]]: イテレータ作成モジュール (順列や組み合わせ、直積、階乗で使える) * [[python/itertools | itertools]]: イテレータ作成モジュール (順列や組み合わせ、直積、階乗で使える)
* [[python/joblib]]: 並列処理モジュール (別途導入が必要) * [[python/joblib]]: 並列処理モジュール (別途導入が必要)
* [[python/Notify | Notify]]: 通知バルーンモジュール (Linux のデスクトップ環境で通知する際に使う) * [[python/Notify | Notify]]: 通知バルーンモジュール (Linux のデスクトップ環境で通知する際に使う)
* [[python/numpy | numpy]]: 数値計算モジュール * [[python/numpy | numpy]]: 数値計算モジュール
* [[python/openpyxl]]: xlsx を編集するモジュール
* [[python/operator-itemgetter]]: 多次元配列を特定のキーで抽出するモジュール (ソートに使う) * [[python/operator-itemgetter]]: 多次元配列を特定のキーで抽出するモジュール (ソートに使う)
* [[python/os | os]]: オペレーティングシステムインターフェースを扱うモジュール (ファイルの移動など) * [[python/os | os]]: オペレーティングシステムインターフェースを扱うモジュール (ファイルの移動など)
* [[http://qiita.com/Accent/items/efb57d66309f6c0ee63d | Pythonで自作モジュールを手軽に使う - Qiita]] * [[http://qiita.com/Accent/items/efb57d66309f6c0ee63d | Pythonで自作モジュールを手軽に使う - Qiita]]
===== モジュールのリロード ===== ===== Python 3.4 以降の モジュールのリロード =====
* 自作モジュールを リロードする方法 * 自作モジュール (''sample'') のリロード
- リロード用モジュールの読み込み\\ <code python>import importlib</code>
- 通常のモジュール読み込み\\ <code python>import sample</code>
- モジュールのリロード\\ <code python>importlib.reload(sample)</code>
* ''from'' 付きのモジュールの リロード
- リロード用モジュールの読み込み\\ <code python>import importlib</code> - リロード用モジュールの読み込み\\ <code python>import importlib</code>
- 通常のモジュール読み込み\\ <code python>from sample import SampleClass</code> - 通常のモジュール読み込み\\ <code python>from sample import SampleClass</code>
</code> </code>
* 参考サイト: [[http://nihaoshijie.hatenadiary.jp/entry/2017/08/28/200626 | Python で class のみ reload - いっきに Python に詳しくなるサイト]] * 参考サイト: [[http://nihaoshijie.hatenadiary.jp/entry/2017/08/28/200626 | Python で class のみ reload - いっきに Python に詳しくなるサイト]]
* Python 2.x では ''reload()''、Python 3.3 までは ''imp.reload()'' を使うらしい…。
===== Python 2.x と 3.x の違い ===== ===== Python 2.x と 3.x の違い =====
* 1つのエスケープシーケンス内に複数のコードを '';'' で区切って記述する (例: ''\033[31;1;4;44m'') * 1つのエスケープシーケンス内に複数のコードを '';'' で区切って記述する (例: ''\033[31;1;4;44m'')
* エスケープシーケンスを複数記述する (''\033[31m\033[1m\033[4m\033[44m'') * エスケープシーケンスを複数記述する (''\033[31m\033[1m\033[4m\033[44m'')
* ''termcolor'' モジュールの ''colored()'' 関数を用いる方法もある。
* やっていることは、与えられた文字列に対し、エスケープシーケンスを付加しているだけである。
* [[https://qiita.com/pytry3g/items/f23e3676a1c939f2d69e | とりあえずpythonでtermcolorを使ってみた - Qiita]]
* 参考サイト * 参考サイト
* [[http://atomic.jpn.ph/prog/io/ansiesc.html | プログラム用例 - 入出力 - カラー文字]] * [[http://atomic.jpn.ph/prog/io/ansiesc.html | プログラム用例 - 入出力 - カラー文字]]
* [[http://qiita.com/hidai@github/items/1704bf2926ab8b157a4f | ターミナルで使える色一覧(8色ANSIエスケープシーケンス) - Qiita]] * [[http://qiita.com/hidai@github/items/1704bf2926ab8b157a4f | ターミナルで使える色一覧(8色ANSIエスケープシーケンス) - Qiita]]
==== 文字列を 1 文字ずつ区切る ====
* 文字列をリストに変換する。\\ <code python>
text = "abcdefg"
list(text)
# -> ['a', 'b', 'c', 'd', 'e', 'f', 'g']
</code>
* 参考サイト: [[http://nfnoface.hatenablog.com/entry/2016/10/05/131600 | Pythonで文字列を1文字ずつ分割する - Webプログラムの技術メモ他]]
==== 定義済みのユーザ関数名の一覧を表示する ====
* 関数が定義済みかどうかを調べる時に使う (モジュールなどの外部のプログラムを使う時にどうぞ)。\\ <code python>
import types
print([f.__name__ for f in globals().values() if type(f) == types.FunctionType])
</code>
* 参考サイト: [[https://stackoverflow.com/questions/6315496/display-a-list-of-user-defined-functions-in-the-python-idle-session | Display a list of user defined functions in the Python IDLE session - Stack Overflow]]