#author("2025-12-15T18:10:05+09:00","default:pengwei-admin","pengwei-admin")
#author("2025-12-15T18:11:00+09:00","default:pengwei-admin","pengwei-admin")
*python[#l5d056f3]

公式リファレンス:https://docs.python.org/ja/3.12/reference/index.html

セキュリティUpdataして公式では表示されないバージョン:https://github.com/adang1345/PythonWindows

#contents

** python3を複数バージョン管理 [#bacf8f54]
** python3を複数バージョン管理-linux [#bacf8f54]
 https://qiita.com/piyo_parfait/items/5abbe4bee2495a62acdc

** windows11でポータブル版python環境 [#zdaefe19]
- 例:python3.12.6
 ダウンロード: https://www.python.org/ftp/python/3.12.6/python-3.12.6-embed-amd64.zip
 C直下に解凍してpath設定。
 

** 基本文法 [#k2bd2785]

*** 関数定義の型ヒントの構文(推奨) [#vad69737]
 
 def 関数名(引数名: 型, 引数名2: 型) -> 戻り値の型:
    ...

-- ない場合
   def 関数名(引数名1, 引数名2, ...):
     処理1

*** raise文、例外を発生させる [#k1856f1e]
 try:
    raise ValueError('out of range')  # ←ここで例外を明示的に発生させる、中の文言は好きに書ける、
 except Exception:
    return 0

  except Exception as e: #好きに書いた文言はeとなる
     print(e)

よく使う例外クラス+用途

| **例外クラス**               | **用途(発生する状況)**                     |
| ----------------------- | ---------------------------------- |
| **ValueError**          | 引数の型は正しいが、値が不適切な場合(例:`int('abc')`) |
| **TypeError**           | 型が不正な場合(例:文字列と数値を足そうとした)           |
| **KeyError**            | 辞書に存在しないキーを参照した場合                  |
| **IndexError**          | リストやタプルで範囲外のインデックスを参照した場合          |
| **FileNotFoundError**   | 指定したファイルが存在しない場合                   |
| **PermissionError**     | ファイルや操作に対して権限がない場合                 |
| **RuntimeError**        | 実行時に一般的なエラーが発生した場合(特定の型に分類できない場合)  |
| **NotImplementedError** | 抽象メソッドや未実装の機能を呼び出した場合              |
| **AttributeError**      | オブジェクトに存在しない属性やメソッドを呼び出した場合        |
| **ImportError**         | モジュールのインポートに失敗した場合                 |
| **ModuleNotFoundError** | 指定したモジュールが見つからない場合                 |
| **ZeroDivisionError**   | 0で割り算した場合                          |
| **OverflowError**       | 数値演算が範囲を超えた場合                      |
| **StopIteration**       | イテレータが終了した場合(通常は内部で使われる)           |
| **AssertionError**      | `assert` 文が失敗した場合                  |
| **MemoryError**         | メモリ不足のとき                           |
| **EOFError**            | 入力が予期せず終了した場合(`input()` でEOF)      |

** Linux pipでopenpyxlインストール問題 [#g38c681f]
https://wiki.weihuasoftware.com/img/python_1765503342067.png

 基本的にubuntuのpackage管理はaptなのに、pip経由でpackageインストールすると、apt管理外になる環境破壊の恐れがある。なので「python -m pip install openpyxl」はダメ。sudo apt insatll python3-openpyxl

トップ   差分 履歴 リロード   一覧 検索 最終更新   ヘルプ   最終更新のRSS