一、sys.argv 是获取运行python文件的时候命令行参数,且以list形式存储参数
其中,sys.argv[0] 代表当前module的名字
以下用代码举例:
import sys a = sys.argv b = len(sys.argv) print(a) print(b)
打印结果如下:
还是上面的代码,当我运行时候输入:python a.py shi 输出如下:
继续运行时候输入:python a.py shi yi 输出如下 :
二、sys.exit
os._exit()会直接将python程序终止,之后的所有代码都不会继续执行。
sys.exit()会引发一个异常:SystemExit,如果这个异常没有被捕获,那么python解释器将会退出。如果有捕获此异常的代码,那么这些代码还是会执行。捕获这个异常可以做一些额外的清理工作。0为正常退出,其他数值(1-127)为不正常,可抛异常事件供捕获。
举例说明:
import os try: os._exit(0) except: print('11')
结果:
没有打印出‘’11‘’,说明os._exit() 直接终止python程序。
import sys try: sys.exit(0) except: print("die") finally: print("cleanup")
打印结果:
打印出了“die”和"cleanup",说明执行sys.exit()后会抛出异常。
综上得出,sys.exit()的退出比较优雅,调用后会引发SystemExit异常,可以捕获此异常做清理工作。os._exit()直接将python解释器退出,余下的语句不会执行。
参考自:https://blog.csdn.net/weixin_41640707/article/details/83420750
标签:python,argv,sys,exit,print,os From: https://www.cnblogs.com/shaoyishi/p/17287978.html