python sys模組之獲取引數

2021-09-24 10:42:14 字數 1873 閱讀 6949

什麼是sys模組?

sys模組:全稱system,指的是直譯器(os指的是作業系統) 常用操作,用於接收系統作業系統呼叫直譯器傳入的引數

1、sys.ar**

獲取指令碼傳遞的所有引數,返回乙個列表。列表中的所有元素均為指令碼傳遞的引數。

sys.ar**[0] # 指令碼傳遞的第乙個引數,固定為指令碼名稱,可以通過次方式獲得指令碼名稱

可以使用索引依次獲得指令碼傳遞的其他引數

2 sys.version

獲取直譯器的版本資訊,返回乙個字串。根據python版本編寫符合不同版本的程式 使程式可相容

import os

import sys

print(sys.version[:3])

3.6

可以通過version檢視是那個版本的程式

import os

import sys

if sys.version[0] == '2':

print('running in python2')

elif sys.version[0] == '3':

print('running in python3')

輸出結果

running in python3

可以通過直接列印版本 檢視是那個版本的程式

import os 

import sys

print(sys.version)

輸出結果

3.6.4 (default, aug 10 2018, 11:14:49)

[gcc 4.8.5 20150623 (red hat 4.8.5-11)]

返回模組的搜尋路徑,初始化使用pythonpath環境變數

print(sys.path)

實現跨平台

print(sys.platform)          

if sys.platform == 'linux':

os.system('ifconfig')

else:

os.system('ipconfig')

練習:

比較兩個檔案的不同之處

import difflib

import sys

if len(sys.ar**) !=2:

print(

"""usage: %s 比較的檔案1 比較的檔案2

"""%(sys.ar**[0])

)else:

file1 = sys.ar**[1]

file2 = sys.ar**[2]

try: # 這裡的是擺出異常,將有可能出現的錯誤情況提前列出。

with open(file1) as f1,open(file2) as f2:

con1 =f1.read().splitlines(keepends=true)

con2 =f2.read().splitlines(keepends=true)

except exception as a:

print('比較錯誤,錯誤的原因',a)

d = difflib.htmldiff

htmlcontent = d.make_file(con1,con2)

with open('different.html','w') as f:

f.write(htmlcontent)

python sys模組之獲取引數

sys模組 全稱system,指的是直譯器。常用操作,用於接收系統作業系統呼叫直譯器傳入的引數 1 sys.ar 獲取指令碼傳遞的所有引數,返回乙個列表。列表中的所有元素均為指令碼傳遞的引數。sys.ar 0 指令碼傳遞的第乙個引數,固定為指令碼名稱,可以通過次方式獲得指令碼名稱 可以使用索引依次獲...

Python sys模組總結

1.sys.argv 實現從程式外部向程式內部傳遞引數 import sys print sys.argv print 取第乙個值為 end print sys.argv 0 2.sys.exit 退出程式執行 import sys for i in range 5 print i if i 2 當...

python sys模組(基礎篇)

我們可以程式中定義一次函式而實現 重用。我們可以使用模組,從而實現在其他程式中重用很多函式。模組基本上就是乙個包含了所有你定義的函式和變數的檔案。為了在其他程式中重用模組,模組的檔名必須以.py為副檔名。模組可以從其他程式 匯入 以便利用它的功能。這也是我們使用python標準庫的方法。using ...