sys模組:全稱system,指的是直譯器。
常用操作,用於接收系統作業系統呼叫直譯器傳入的引數
1 sys.ar**
獲取指令碼傳遞的所有引數,返回乙個列表。列表中的所有元素均為指令碼傳遞的引數。
sys.ar**[0] # 指令碼傳遞的第乙個引數,固定為指令碼名稱,可以通過次方式獲得指令碼名稱
可以使用索引依次獲得指令碼傳遞的其他引數
2 sys.version
獲取直譯器的版本資訊,返回乙個字串。根據python版本編寫符合不同版本的程式 使程式可相容
3.6.4 (default, aug 10 2018, 11:14:49)
[gcc 4.8.5 20150623 (red hat 4.8.5-11)]
可以通過字串的切片特性得到直譯器的版本號: print(sys.version[:5]
import sys
print(sys.version)
print(type(sys.version))
print(sys.version[:5])
#輸出結果:
3.6.4 (default, aug 10 2018, 11:14:49)
[gcc 4.8.5 20150623 (red hat 4.8.5-11)]
3.6.4
3 sys.platform
獲取當前作業系統。可以判斷當前所處的系統環境,實現跨平台:
示例:
if sys.platform == 'linux':
os.system(linux系統命令)
else:
os.system(其他系統命令)
應用練習:
編寫指令碼:compare.py。再命令列中執行 python 檔案1 檔案2 輸出顯示兩個檔案的不同之處。
mport difflib
import sys
parameter = sys.ar**
with open(parameter[1])as f1,open(parameter[2])as f2:
file1 = f1.read().splitlines(keepends=true)
file2 = f2.read().splitlines(keepends=true)
diff = difflib.differ()
diff_result = diff.compare(file1,file2)
print(''.join(list(diff_result)))
執行結果:
[kiosk@foundation47 time]$ python3 compare.py /public/passwd1 /public/passwd2
- root:x:0:0:root:/root:/bin/bash
+ rooter:x:0:0:rooter:/rooter:/bin/bash
? ++ ++ ++
bin:x:1:1:bin:/bin:/sbin/nologin
+ daemon:x:2:2:daemon:/sbin:/sbin/nologin
adm:x:3:4:adm:/var/adm:/sbin/nologin
- lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
sync:x:5:0:sync:/sbin:/bin/sync
shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
halt:x:7:0:halt:/sbin:/sbin/halt
mail:x:8:12:mail:/var/spool/mail:/sbin/nologin
- operator:x:11:0:operator:/root:/sbin/nologin
+ operator:x:11:0:operator:/rooter:/sbin/nologin
? ++
- mail:x:8:12:mail:/var/spool/mail:/sbin/nologin
games:x:12:100:games:/usr/games:/sbin/nologin
python sys模組之獲取引數
什麼是sys模組?sys模組 全稱system,指的是直譯器 os指的是作業系統 常用操作,用於接收系統作業系統呼叫直譯器傳入的引數 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 ...