Python3中sys模組常用方法
阿新 • • 發佈:2022-05-11
sys模組是程式碼與Python直譯器進行互動的模組,常見用法如下:
獲取Python相關資訊
import sys
print('當前平臺', sys.platform)
print('當前Python版本‘, sys.version)
print('預設編碼格式‘,sys.getdefaultencoding())
print('所有系統模組‘,sys.moudules)
print('匯入模組及包的查詢路徑', sys.path)
新增模組匯入查詢路徑
假設我們需要將當前指令碼所在目錄到人到模組查詢路徑sys.path中去
import sys root_path = os.path.dirname(__file__) # __file__代表當前指令碼檔案, os.path.dirname()為獲取其所在目錄 sys.path.append(root_path) # 或者 sys.path.insert(0, root_path) 即插入到最前面
直接向系統標準輸入輸出流讀寫資料
可以使用sys.stdout.write()和sys.stdin.read()來代替print()即input方法,例如:
import sys
sys.stdout.write('清輸入一個數字:')
a = sys.stdin.read(1)
sys.stdout.write('輸入的數字為:%s\n' % a)
獲取指令碼命令列執行指令碼
可以使用sys.argv獲取指令碼路徑及命令列引數,結果為一個列表,第一項是指令碼路徑,後面是命令列執行時指定的引數(如果有),例如,指令碼demo.py內容如下:
import sys print('指令碼路徑', sys.argv[0]) if len(sys.argv) > 1: print('指令碼後引數為', sys.argv[1:]) print('無引數')
在命令列執行 python demo.py start
執行結果如下:
指令碼路徑 demo.py
指令碼後引數為 ['hello']