前回の記事では、osモジュールの概要を説明しています。このモジュールとsysモジュールは名前が似ているように見えますが、実際にはほとんど関係がありません。osモジュールは主にオペレーティングシステムとの対話を担当し、これら2つのモジュールは多くの需要を達成できる組み合わせ。sysモジュールは、主にPythonインタープリターとの対話を担当し、Python実行環境を制御するための一連の関数と変数を提供します。この記事では、一般的に使用されるsysモジュールの使用法を要約します。
1オペレーティングシステムプラットフォームの名前を返します
sys.platform
'win32'
2Pythonインタープリターのバージョン情報を取得します
sys.version
'3.7.6 (default, Jan 8 2020, 20:23:39) [MSC v.1916 64 bit (AMD64)]'
3現在のデフォルトの文字エンコード形式に戻ります
sys.getdefaultencoding()
'utf-8'
4 sys.argvこのスクリプトを実行すると、パラメーターをインタープリターに渡すために使用されます。これはリストであり、最初のパラメーターはデフォルトでスクリプト自体のパスであり、実行中のpyファイルに続くコンテンツは後続のパラメーターとしてプログラムに渡されます。以下の栗
を読んでください;次のようにsys.pyを作成してください
import sys
sys.hexversion
if len(sys.argv) == 1:
print (sys.argv[0])
elif sys.argv[1]=='version' :
print(sys.version)
elif sys.argv[1]=='platform':
print(sys.platform)
else : print('Vague instructions')
cmdでsys.pyを呼び出す
C:\Users\yuanwanli> python C:\Users\sys.py
C:\Users\sys.py
C:\Users\yuanwanli>python C:\Users\sys.py platform
win32
C:\Users\yuanwanli>python C:\Users\sys.py version
3.7.3 (v3.7.3:ef4ec6ed12, Mar 25 2019, 22:22:05) [MSC v.1916 64 bit (AMD64)]
C:\Users\yuanwanli>python C:\Users\sys.py x
Vague instructions
5 sys.stdin#(標準入力)
sys.stdin.readline()の関数はinput ()と同等であり、デフォルトの入力形式は文字列であり、違いは2つの点にあります。
- input( '数値を入力してください:')のように、input()ブラケットにプロンプトテキストを直接入力できますが、sys.stdin.readline()はできません。
- sys.stdin.readline()は、データの各行の最後の改行文字「\ n」を取得しますが、input()は無視します。
a = input('please input int:')
b = sys.stdin.readline()
print(list(a), list(b))
# 都输入 1
['1'] ['1', '\n']
sys.stdin.readline()。strip( '\ n')は、改行文字 '\ n'を削除して、input()と同じ効果を実現できます。
a = input('please input int:')
b = sys.stdin.readline().strip('\n')
print(list(a), list(b))
# 都输入 1
['1'] ['1']
sys.stdin.readline()入力は文字列形式であり、intとfloatが必要です。これらは、map関数を使用して変換できます。
a = sys.stdin.readline().strip('\n')
a = list(map(int, a.split()))
print(a)
# 输入1 2
[1, 2]
6 sys.stdout#(標準出力)
Pythonでオブジェクトを印刷するためにprint(x)を呼び出すとき、実際にはsys.stdout.write(x + '\ n')
printを呼び出し、必要なものをコンソールに出力します。次のように、新しい行の文字を追加します。
sys.stdout.write('hello\n')
print('hello')
hello
hello
これはsysモジュールの基本的な使用法です。より包括的な方法については、公式のsysドキュメントhttps://docs.python.org/zh-cn/3/library/sys.html?highlight=sys#moduleを参照してください。 -sys