====== Python 関連 ====== {{:python:colt_python_img_6785.jpg?360|Python Image}}\\ [[https://commons.wikimedia.org/wiki/File:Colt_Python_IMG_6785.jpg|File:Colt Python IMG 6785.jpg - Wikimedia Commons]] より...\\ なぜにヘビ🐍ぢゃないんでしょうねぇ😅💦\\ {{:python:python_logo.svg?150|Python Logo}}\\ 本家: [[https://www.python.org/|Welcome to Python.org]]\\ ソースコード: [[https://github.com/python/cpython|GitHub - python/cpython: The Python programming language]]\\ \\ Python(パイソン)は、汎用のプログラミング言語である。コードがシンプルで扱いやすく設計されており、C 言語などに比べて、さまざまなプログラムを分かりやすく、少ないコード行数で書けるといった特徴がある。\\ [[wpjp>Python|Python - Wikipedia]] より\\ ===== 環境構築 ===== [[python:python_install|Python のインストール]]\\ [[python:python_build|Python のビルド]]\\ \\ [[python:pyodide|Pyodide - Web ブラウザで動作する Python 環境]]\\ [[javascript:brython|Brython - クライアントサイドの Web プログラミング用 Python 3 の実装]]\\ \\ [[python:venv|Python venv 仮想環境]]\\ [[python:pipenv|pipenv - 人間のための Python 開発ワークフロー]]\\ [[python:virtualenvwrapper|VirtualEnv & VirtualEnvWrapper で作る Python 2.7 仮想環境]] (☢️古い資料です (Obsolete)☢️)\\ [[python:pythonbrew|pythonbrew の使い方]]\\ [[python:pip|pip - Python パッケージ管理システム]]\\ [[python:pipx|pipx - 分離環境での Python アプリケーションのインストールと実行]]\\ [[python:mamba|mamba - 高速で堅牢なクロスプラットフォームのパッケージ マネージャー]]\\ [[python:easy_install|easy_install、setuptools、pip - パッケージ管理]]\\ \\ [[python:mercurial|Mercurial - 分散型バージョン管理システム]](Linux)\\ [[linux:tortoisehg|TortoiseHg - Mercurial 分散型バージョン管理システム用ツール]](Linux)\\ [[windows:mercurial|TortoiseHg - Mercurial 分散型バージョン管理システム用ツール]](Windows)\\ [[mac:tortoisehg|TortoiseHg - Mercurial 分散型バージョン管理システム用ツール]](Mac)\\ \\ [[python:manylinux|manylinux]]\\ ===== プログラミング ガイド ===== [[python:socket:programming|Python ソケット プログラミング]]\\ [[python:modify_exif_data|Python EXIF データ変更]]\\ ===== 言語構文 ===== [[python:python_script_template|Python スクリプトのひな型]]\\ [[python:language_memo|Python ランゲージ メモ]]\\ [[python:slice|Python スライス]]\\ [[python:exception_handling|Python 例外処理 (try, except, else, finally)]]\\ [[python:f-strings|フォーマット済み文字列リテラル(f-strings)]]\\ [[python:list_comprehension_and_generator_expressions|リスト内包表記とジェネレータ式]]\\ [[python:lambda|無名関数(lambda)]]\\ [[python:module_sample | Python モジュールサンプル]]\\ [[python:decorator|Python デコレータ]]\\ [[python:error|Python エラー]]\\ [[http://www.shido.info/py/python7.html|Python のクラスシステム]]について解説されている文献\\ [[python:interface | 抽象基底クラス]]\\ ==== 制御構造 ==== [[python:if_elif_else|if elif else 文]]\\ [[python:while|while 文]]\\ [[python:for_range_enumerate|for range enumerate 文]]\\ ==== 関数機能 ==== [[python:capitalize_upper_lower|大文字小文字変換(capitalize, upper, lower)]]\\ [[python:count|文字の個数を数える(count)]]\\ [[python:find_index|文字列検索(find, index)]]\\ [[python:replace|文字列置換(replace)]]\\ ===== モジュール ===== [[python:argparse|argparse - コマンドライン引数解析]]\\ [[python:timeit|timeit]]\\ [[python:pathlib|pathlib, glob.iglob(), os.walk()]]\\ [[python:gettext|gettext - 多言語対応]]\\ [[python:winreg|winreg - Windows レジストリ アクセス]]\\ [[python:socket|socket - 低水準ネットワークインターフェイス]]\\ [[python:ctypes|ctypes - Python のための外部関数ライブラリ]]\\ ===== パッケージ ===== [[python:attrdict|AttrDict - 属性スタイルでアクセスできる辞書]]\\ [[python:numpy_scipy_matplotlib|NumPy, SciPy, Matplotlib, CuPy, Pandas]]\\ [[python:pyopencl|PyOpenCL]]\\ [[python:pyopenssl|pyOpenSSL]]\\ [[python:ipython|IPython]]\\ [[python:jupyterlab|JupyterLab - Project Jupyter の次世代ユーザーインターフェース]]\\ [[python:jupyter_notebook|Jupyter Notebook - プログラムとその実行結果を再実行可能なドキュメント形式で表現]]\\ [[python:fabric|Fabric - シンプルな Pythonic リモート実行とデプロイメント]]\\ [[python:moinmoin|MoinMoin]]\\ [[python:pythonnet|Python for .NET (pythonnet)]] (Python .NET 連携)\\ [[python:uwsgi|uWSGI - WSGI アプリケーションコンテナ]]\\ [[python:cefpython|CEFPython]]\\ [[python:psycopg2|Psycopg2]]\\ [[python:beautifulsoup|BeautifulSoup]]\\ [[python:selenium|Selenium]]\\ [[python:uamobile_install|uamobile]]\\ [[python:package_build_error|パッケージビルドでエラーになる場合]]\\ [[python:python-hwinfo|python-hwinfo]]\\ [[python:mutagen|Mutagen]]\\ [[python:pymongo|PyMongo]]\\ [[python:python-vlc|python-vlc - VLC の Python バインディング]]\\ [[python:musicbrainzngs|musicbrainzngs]]\\ [[python:pyutm|PyUTM]]\\ [[python:twitter_scraper|Twitter Scraper]]\\ [[python:facebook_scraper|Facebook Scraper]]\\ [[python:pybluez|PyBluez - Bluetooth アクセス]]\\ [[python:pyserial|pySerial - シリアルポート アクセス]]\\ [[python:werkzeug|Werkzeug]]\\ [[python:opencv|OpenCV]]\\ [[python:clang|clang バインディング]]\\ [[python:taurus|Taurus - 継続的テスト自動化フレームワーク]]\\ [[python:libtmux|libtmux - tmux を制御するための Python スクリプトライブラリ]]\\ [[python:sudo_plugin|Sudo Python Plugin API]]\\ [[python:cryptography|cryptography]]\\ [[python:pyspice|PySpice]]\\ [[python:bokeh|Bokeh - Web ブラウザー用のインタラクティブなビジュアライゼーション視覚エフェクト Python ライブラリ]]\\ [[python:nanobind]]\\ [[python:pyskein|PySkein - Python 用の Skein ハッシュ アルゴリズム]]\\ ===== Framework ===== [[python:django|Django - Web アプリケーション フレームワーク]]\\ [[python:mezzanine|Mezzanine]]\\ [[python:wxpython|wxPython - クロス プラットフォーム GUIライブラリ]]\\ [[javascript:mochikit|MochiKit - A lightweight Javascript library]]\\ ===== アプリ / サービス / サーバー ===== [[python:youtube-dl|youtube-dl - YouTube や他の動画サイトから動画をダウンロード]]\\ [[python:gunicorn|Gunicorn - Python WSGI HTTP Server for UNIX]]\\ [[python:virtual_assistant|Python 仮想アシスタント]]\\ ===== ツール ===== [[python:get_shell_cmds|Windows 10 の Shell コマンドの取得]]\\ [[python:split_hash|巨大ファイルの分割ハッシュ値算出ツール]]\\ ===== JIT コンパイラ ===== [[http://numba.pydata.org/|Numba: A High Performance Python Compiler]]\\ * Anaconda, Inc. が開発する Python コードの JIT コンパイラ\\ * 使い方は関数に @njit = @jit(nopython=True) デコレータを指定する\\ * @jit(int32(int32, int32)) のような型指定で更に高速化される\\ * @jit(nogil=True) によりマルチコアシステムを活用できる\\ * @jit(cache=True) によりプログラムを呼び出すたびに掛かるコンパイル時間を回避できる\\ * @jit(nopython=True, parallel=True) = @njit(parallel=True) により自動並列化による最適化を実行できる\\ * Numpy などは高速化できるが Pandas は Numba によって理解されないため高速化されない\\ * Numba は関数の Python バイトコードを LLVM を使用して CPU に合わせた関数のマシンコードバージョンを生成する\\ * [[https://developer.nvidia.com/cuda-zone|Nvidia CUDA]] および [[https://rocm.github.io/|AMD ROC]] GPU をターゲットにできる\\ Pandas がボトルネックになってもカーネル関数に分離すれば Numba で最適化出来る。\\ [[https://medium.com/bcggamma/bring-your-python-code-up-to-speed-with-numba-1aa1c0e52885|Bring Your Python Code Up to Speed with Numba - BCG GAMMA - Medium]]\\ ===== 開発環境 ===== [[python:eclipse|Eclipse + PyDev]] - 統合開発環境\\ [[linux:fedora:fedora_eclipse|Fedora Eclipse]] - 統合開発環境\\ [[dotnet:iron_python_studio|IronPython Studio]] - IronPython(.NET 対応 Pyhton) の総合開発環境\\ [[python:micropython|MicroPython - マイクロコントローラー向けに最適化された Python]]\\ ===== プロセス制御 ===== [[python:supervisor|Supervisor - プロセス制御システム]]\\ ===== カテゴリー別 ===== [[python:voice_analysis|Python 音声解析]]\\ ===== Deep Learning 関連 ===== [[python:deep_learning|Python による Deep Learning の実装]]\\ [[python:colorization_ai|Colorization AI]]\\ ===== 参考文献 ===== [[https://qiita.com/hatai/items/34c91d4ee0b54bd7cb8b|Awesome Python:素晴らしい Python フレームワーク・ライブラリ・ソフトウェア・リソースの数々 - Qiita]]\\ [[https://towardsdatascience.com/10-cool-python-project-ideas-for-python-developers-7953047e203|10 Cool Python Project Ideas for Python Developers | by Claire D. Costa | Towards Data Science]]\\ [[http://www.sakito.com/2012/10/rrdtool-python.html|RRDtool を Python から使う | 技術的生存報告記]]\\ ===== 古いドキュメント ===== [[python:document_archive|古いドキュメント]]\\