8.1 ライブラリ os
Pythonには組み込みのライブラリos
と
platform
があるよ。これらはオペレーティングシステムと
それに関する情報を取得するための多くの機能を提供しているんだ。
これらのライブラリはファイルシステム操作、プロセス管理、環境変数、 それに他のオペレーティングシステムの側面に関連する操作を実行するために使えるよ。 今からいくつかの機能を見ていこう。
ライブラリ os
ライブラリos
はオペレーティングシステムとの
インタラクションのための機能を提供しているよ。これにより
ファイルシステムの操作、プロセス管理、環境変数の管理、
そして他にもたくさんのことができるんだ。
現在の作業ディレクトリの取得:
import os
cwd = os.getcwd()
print("Current Working Directory:", cwd)
現在の作業ディレクトリの変更:
os.chdir('/path/to/directory')
新しいディレクトリの作成:
os.mkdir('new_directory')
ディレクトリの削除:
os.rmdir('new_directory')
ファイルとディレクトリの一覧:
files = os.listdir('.')
print("Files and directories:", files)
便利な情報: ディレクトリ、フォルダっていう用語は 同じものを指しているんだよ。単に別のオペレーティングシステムから 取り入れただけで、これらは同じものだよ。
環境変数の扱い方を学ぶことも役立つよ。これは 引数のようなもので、オペレーティングシステムが 読み取ったり(あるいは設定したり)することができるからね。
環境変数の値の取得:
home_dir = os.getenv('HOME')
print("Home Directory:", home_dir)
環境変数の値の設定:
os.environ['MY_VAR'] = 'my_value'
8.2 ライブラリ platform
ライブラリplatform
はPythonが実行されている
プラットフォームに関する情報を取得するための機能を提供しているよ。
オペレーティングシステム、CPUのアーキテクチャ、Pythonのバージョンなど、
色々なパラメータを知ることができるんだ。
ライブラリ platform
の主な機能
オペレーティングシステム:
import platform
os_name = platform.system()
print("Operating System:", os_name)
ネットワーク上のコンピュータ名 (hostname)
:
node_name = platform.node()
print("Node Name:", node_name)
オペレーティングシステムのリリース:
os_release = platform.release()
print("OS Release:", os_release)
オペレーティングシステムのバージョン:
os_version = platform.version()
print("OS Version:", os_version)
CPUのアーキテクチャ:
architecture = platform.architecture()
print("Architecture:", architecture)
プロセッサの種類:
processor = platform.processor()
print("Processor:", processor)
Pythonのバージョン:
python_version = platform.python_version()
print("Python Version:", python_version)
Pythonコンパイラ:
python_compiler = platform.python_compiler()
print("Python Compiler:", python_compiler)
もし興味があれば、このコードを実行して あなたのプログラムの視点であなたのコンピュータを見てみよう:
import platform
print("Operating System:", platform.system())
print("Node Name:", platform.node())
print("OS Release:", platform.release())
print("OS Version:", platform.version())
print("Machine:", platform.machine())
print("Processor:", platform.processor())
print("Architecture:", platform.architecture())
print("Python Version:", platform.python_version())
print("Python Compiler:", platform.python_compiler())
8.3 ライブラリ sys
ライブラリ sys
は標準Pythonライブラリの一部で、
Pythonインタープリタとインタラクションするための変数と
関数にアクセスする手段を提供しているんだ。実行環境に関する情報の取得、
スクリプトの実行プロセスの管理、そして
システムの様々なコンポーネントとインタラクションするために
役に立つよ。
プログラムはこれを使って面白いことがたくさんできるよ。
1. コマンドライン引数
ライブラリsys
はスクリプトに渡されたコマンドライン
引数をsys.argv
リストを使って取得できるよ。
2. プログラムの終了
関数 sys.exit()
は指定された終了ステータスで
プログラムの実行を終了するために使えるよ。ゼロは通常、
成功した終了を示し、ゼロ以外の値はエラーを示すよ。
import sys
if len(sys.argv) < 2:
print("エラー: 引数が足りません")
sys.exit(1)
print("全ての引数が正しく指定されました")
sys.exit(0)
3. モジュール検索パス
sys.path
リストにはPythonインタープリタが
モジュールをインポートするために検索するパスが含まれているよ。
このリストに新しいパスを追加して、モジュール検索をカスタマイズすることが可能だよ。
import sys
print("モジュール検索パス:")
for path in sys.path:
print(path)
# 新しいパスの追加
sys.path.append('/path/to/my/modules')
print("更新されたモジュール検索パスリスト:", sys.path)
4. システム情報
ライブラリsys
はPythonのバージョンやプラットフォーム
などのシステムとインタープリタに関する情報を提供しているよ。
import sys
# Pythonのバージョン
print("Pythonのバージョン:", sys.version)
# プラットフォーム情報
print("プラットフォーム:", sys.platform)
# 整数のサイズ(バイト単位)
print("intのサイズ:", sys.getsizeof(0), "バイト")
5. インストールされたモジュール
sys.modules
は読み込まれたすべてのモジュールに関する
情報を含む辞書なんだ。これを使って読み込まれたモジュールに
関する情報を取得したり再インポートすることができるよ。
import sys
# 読み込まれたモジュールのリスト
print("読み込まれたモジュール:")
for module in sys.modules:
print(module)
GO TO FULL VERSION