模塊是一個包含定義函數和變量的文件,其後綴名是.py。模塊可以被別的程序引入,以使用該模塊中的函數等功能。
sys常用模塊:sys.argv和sys.exit(n)。
1、sys.argv
sys.argv是一個包含命令行參數的列表,這裡要理解列表的意思,默認的列表[0]就是.py這個文件,舉個例子:
#!/usr/bin/python3# 文件名: test_sys.py
import sys
print('命令行參數如下:')for i in sys.argv: print(i)$ python test_sys.py 1 2 3output:#命令行參數如下: test_sys.py 1 2 32、sys.exit()
Python程序有兩種退出方式:os._exit(), sys.exit()
os._exit()會直接將python程序終止,之後代碼不執行,一般是在子線程。
sys.exit()會引發一個異常:SystemExit,如果這個異常沒有被捕獲,那麼python解釋器將會退出。如果有捕獲此異常的代碼,那麼這些代碼還是會執行。
exit(0):無錯誤退出;
exit(1):有錯誤退出。
這倆執行結果是一樣的,區別在於有沒有報錯。
#捕捉異常的處理import sys try: sys.exit(0) #1也是同樣的執行結果except SystemExit: print("捕捉異常") for i in sys.argv: print(i)
output:捕捉異常 /home/zeng/miniconda3/lib/python3.7/site-packages/ipykernel_launcher.py -f /home/zeng/.local/share/jupyter/runtime/kernel-fbb81552-22cb-4b57-a1b9-1fded3b29157.json
#不捕捉異常import sys sys.exit(0) for i in sys.argv: print(i)
output:An exception has occurred, use %tb to see the full traceback.SystemExit: 0