Python学習OSモジュールと使用法

osモジュールは、プログラムが配置されているオペレーティングシステムを表し、主にプログラムが実行されているオペレーティングシステムに関する情報を取得するために使用されます。

Pythonインタラクティブインタープリターにosモジュールをインポートし、os .__ all__コマンド(__all__変数はモジュールのパブリックインターフェイスを表します)を入力すると、モジュールに含まれるすべての属性と関数を確認できます。

ここでは、osモジュールで一般的に使用される属性と機能のみを紹介します。

次のプログラムは、osモジュールのほとんどの機能の使用法を示しています。

import os
# 依存モジュールをインポートするオペレーティングシステムの名前を表示します
print(os.name)
# PYTHONPATH環境変数の値を取得します
print(os.getenv('PYTHONPATH'))
# 現在のシステムのログインユーザー名を返します
print(os.getlogin())
# 現在のプロセスIDを取得します
print(os.getpid())
# 現在のプロセスの親プロセスIDを取得します
print(os.getppid())
# 現在のシステムのCPUの数を返します
print(os.cpu_count())
# リターンパスセパレータ
print(os.sep)
# 現在のシステムのパスセパレータを返します
print(os.pathsep)
# 現在のシステムの新しい行の文字を返します
print(os.linesep)
# 暗号化に適した最大3バイトの戻りバイト
print(os.urandom(3))

上記のプログラムを実行すると、次の出力が表示されます。

nt
None
yeeku
9904
12036
8

;
b’\x12\x1e\xcf’

上記の出力から、PythonがWindowsシステムに依存モジュールをインポートするオペレーティングシステムの名前は「nt」、現在のシステムのログインユーザー名は「yeeku」、現在のプロセスIDは「9904」、現在のプロセスの親プロセスであることがわかります。 IDは「12036」です。現在のシステムには8つのCPUがあります。現在のシステム(Windows)のパス区切り文字は「\」です。現在のシステム(Windows)の複数のパス間の区切り文字はセミコロン(;)です。現在のシステム(Windows)では、新しい行の文字がはっきりと表示されません。これは、コンソールに「\ r \ n」が出力されると2行の空白行が生成されるためです。

さらに、osモジュールには、ファイルやディレクトリを操作するための多数の関数も含まれています。このチュートリアルでは、これらの関数を後続の章で具体的に紹介します。

osモジュールには、新しいプロセスの開始、既存のプロセスの終了などに使用できるさまざまなプロセス管理機能も含まれています。 osモジュールでのプロセス管理に関連する機能は次のとおりです。

os.abort():現在のプロセスへのSIGABRT信号を生成します。 UNIXシステムでは、デフォルトの動作はカーネルダンプを生成することです。Windowsシステムでは、プロセスはすぐに終了コード3を返します。

os.execl(path、arg0、arg1、…):この関数には、os.execle()、os.execlp()など、同様の関数を持つ一連の関数もあります。これらの関数はすべて、パラメーターリストarg0、arg1、..を使用します。パスで表されるファイルを実行します。

os.forkpty():子プロセスをフォークします。

os.kill(pid、sig):pidに対応するプロセスにsig信号を送信して、プロセスを終了します。

os.killpg(pgid、sig):pgidに対応するプロセスグループにsig信号を送信します。

os.popen(cmd、mode = 'r'、buffering = -1):cmdコマンドへの読み取りおよび書き込みパイプラインを開くために使用されます(モードがrの場合は読み取り専用パイプライン、モードがrwの場合は読み取り/書き込みパイプライン)、バッファリングbufferパラメータは、組み込みのopen()関数と同じ意味を持ちます。この関数によって返されるファイルオブジェクトは、バイトではなく文字列の読み取りと書き込みに使用されます。

os.spawnl(mode、path、…):この関数には、os.spawnle()、os.spawnlp()など、同様の関数を持つ一連の関数もあります。これらの関数は、新しいプロセスで新しいプログラムを実行するために使用されます。

os.startfile(path [、operation]):ファイルに関連付けられているツールを使用して、指定されたファイルに対応する操作を実行します。操作操作を指定しない場合、デフォルトで開く操作が実行されます。操作パラメーターは、開く(開く)、編集(編集)、印刷(印刷)などの有効なコマンドライン操作項目である必要があります。

os.system(command):オペレーティングシステムで指定されたコマンドを実行します。

次のプログラムは、osモジュールのプロセス管理に関連する機能の機能を示しています。

import os
# プラットフォームでcmdコマンドを実行する
os.system('cmd')
# Excelを使用してgを開く:\abc.xlsファイル
os.startfile('g:\abc.xls')
os.spawnl(os.P_NOWAIT,'E:\Tools\編集ツール\Notepad++.7.5.6.bin.x64\notepad++.exe',' ')
# pythonコマンドを使用してosを実行します_test.pyプログラム
os.execl("D:\Python\Python36\python.exe"," ",'os_test.py','i')

上記のプログラムを直接実行すると、プログラムの実行後、Excelを使用してabe.xlsファイルが開かれ、Notepad ++ツールも開かれ、pythonコマンドを使用してos_test.pyファイルが実行されることがわかります。ただし、プログラムの太字のコードのコメントを外すと、cmdコマンドラインプログラムはプログラムの実行後にのみ開始されることがわかります。これは、as.system()関数を使用してプログラムを実行すると、新しいプログラムが配置されているプロセスが元のプログラムを置き換えるためです。処理する。

ナレッジポイントの補足:

osは「オペレーティングシステム」の略で、名前が示すように、osモジュールはさまざまなPythonプログラムがオペレーティングシステムと対話するためのインターフェイスを提供します。 osモジュールを使用することで、一方ではオペレーティングシステムと簡単に対話でき、他方ではページはコードの移植性を大幅に向上させることができます。モジュールの関連する機能にエラーがある場合、OSError例外またはそのサブクラス例外がスローされます。

注意

ファイルの読み取りと書き込みを行う場合は、組み込み関数open()を使用することをお勧めします。

パス関連の操作の場合は、osのサブモジュールos.pathを使用することをお勧めします。

複数のファイルを1行ずつ読み取りたい場合は、fileinputモジュールを使用することをお勧めします。

一時ファイルまたはパスを作成するには、tempfileモジュールを使用することをお勧めします。

より高度なファイルおよびパス操作を実行するには、shutilモジュールを使用する必要があります。

これまでのところ、osモジュールとPython学習の使用法に関するこの記事をここで紹介します。関連するPython osモジュールと使用法の内容については、ZaLou.Cnの以前の記事を検索するか、以下の関連記事を引き続き参照してください。今後もZaLouをサポートしていただければ幸いです。 .Cn!

Recommended Posts

Python学習OSモジュールと使用法
Python3モジュール
pythonでのosパッケージの使用
python学習ルート
Python and Go
パイソンリスト学習
Pythonレッスン37-モジュール
python標準ライブラリOSモジュールの詳細な説明
Pythondecimalモジュールの使用法の詳細な説明
Pythonの内省と考察
Pythonエントリー学習教材
Four.mdを学習するPython3エントリ
[python] ubuntuの下のpython2とpython3
Python3外部モジュールの使用
python_クローラーの基本的な学習
Pythonの高度な使用法の概要
python_正規式学習
pythonのPrettytableモジュール
three.mdを学習するPython3エントリ
Pythonの分解とパッケージ化
Python3.mdの使用を開始する
Python3の構成とentry.md
two.mdを学習するPython3エントリ
Pythonの自動操作とメンテナンス2
Pythonの紹介と環境のインストール
Pythonの上位関数の使用法の概要!
Pythonはクローラーとアンチクローラーを知っています
centos7はpython3とipythonをインストールします
ubuntu18.04python3.8をコンパイルしてインストールします
Python正規表現クイックラーニング
Centos6.10はpythonとyumを再インストールします
PythonプログラミングPycharm高速学習
Pythonオープン読み取りおよび書き込み
はじめにpython学習手順
CentOS7はpython3とpip3をインストールします
Pythonの自動操作とメンテナンス1
Pythonのデータ構造とアルゴリズム
Pythonマジック関数eval()学習
Pythonマルチプロセスおよびマルチスレッドの基本
CentOS6.9はpythonをコンパイルしてインストールします
python描画モジュールのmatplotlib
Pythonのジェネレーターとイテレーター
PythonFakerデータ偽造モジュール
Pythonの上位関数の使用法の概要!