鹹魚Micropy標準庫—sys系統功能
sys模塊提供了一些常用的系統功能函數和常量。
函數
-
sys.exit(retval=0)
使用指定參數退出當前程序。它也會產生 SystemExit 異常,同時產生系統軟復位。 -
sys.print_exception(exc, file=sys.stdout)
打印異常到文件對象,默認是 sys.stdout。
和 CPython 的差異
這是CPython中回溯模塊的簡化版本。不同於 traceback.print_exception(),這個函數用異常值代替了異常類型、異常參數和回溯對象。文件參數在對應位置,不支持更多參數。CPython兼容回溯模塊在 micropython-lib。
常數
-
sys.argv
啓動參數列表 -
sys.byteorder
字節順序 (“小” 或 “大”). -
sys.implementation
當前 Python 情況,如(name=‘micropython’, version=(1, 8, 1))。對於 MicroPython,它返回下面屬性:
名稱 - “micropython”
版本 - (主, 次, 微), 如 (1, 7, 0)
這個方法推薦用來識別 MicroPython 和其它的 Python (注意少數移植版不支持)
和 CPython 的差異 CPython 包含了更多屬性,MicroPython支持基本功能。
sys.maxsize
整數類型最大的數值。或MicroPython如果它小於os最大值 (當 MicroPython 移植版不支持 long int 時).
這個屬性可以用來檢測平臺的 “bitness” (32位或64位等)。推薦不要字節比較屬性值,而是象下面這樣計算:
bits = 0
v = sys.maxsize
while v:
bits += 1
v >>= 1
if bits > 32:
# 64位(或者更高)系統
...
else:
# 32位(或者更低)系統
# 注意在32位系統中,因爲前面說明的願意,bits數值可能小於32(如31)
# 因此要使用">16",">32",">64"這種方法進行比較
-
sys.modules
已載入模塊字典。在某些移植版中,它可能不包含在內建模塊中。 -
sys.path
系統路徑,
-
sys.platform
MicroPython 運行的平臺。在 OS/RTOS 移植版本中,通常表示OS, 如 “linux”。在一般移植中它代表使用的開發板,如在最初的 MicroPython 中是“pyboard”。它可以用來識別不同的板子,如果需要識別運行環境(在其它 Python 環境下), 請使用 sys.implementation。 -
sys.stderr
標準錯誤輸出設備(默認是USB虛擬串口,可選其他串口) -
sys.stdin
標準輸入設備(默認是USB虛擬串口,可選其他串口) -
sys.stdout
標準輸出設備(默認是USB虛擬串口,可選其他串口) -
sys.version
Python 語言版本,字符串格式。 -
sys.version_info
Python 語言版本,整數元祖格式。