通过这节学习来知道如何在linux下执行python代码
sys是system的缩写,用来获取操作系统和编译器的一些配置,设置及操作
我们要充分的理解他最好是在linux的环境下进行测试
sys.argv[0] ,返回的是代码所在文件的路径
[mark@bogon ~]$ vi test.py [mark@bogon ~]$ python3 test.py test.py [mark@bogon ~]$ cat test.py import sys print(sys.argv[0])
sys.argv[1], 返回的是代码后的第一个参数 ,以此类推
[mark@bogon ~]$ vi test.py [mark@bogon ~]$ python3 test.py 1 2 3 4 test.py 1 [mark@bogon ~]$ cat test.py import sys print(sys.argv[1])
通过两个代码也就清晰的看出来了argv的用处与用法
下面的代码可以体现出sys.argv的应用
import sys def readfile(filename): f=open(filename) while True: line=f.readline() if len(line)==0: break print(line) f.close() print(sys.argv) print(sys.argv[0]) if len(sys.argv)<2: print(" no action specified") sys.exit() if sys.argv[1].startswith("--"): option=sys.argv[1][2:] #fetch sys.argv[1] but without the first two characters if option=="version": #当命令行参数为--version,显示版本号 print("Version 1.2") elif option=="help":#当命令行参数为--help,显示帮助内容 print("") else: print("Unknown option") sys.exit() else: for filename in sys.argv[1:]:#当参数为文件名时,传入readfine,读出其内容 readfile(filename)
注意最好都要在linux的运行环境下才可以看出效果
[mark@bogon ~]$ python3 test.py --version ['test.py', '--version'] test.py Version 1.2 [mark@bogon ~]$ python3 test.py --help ['test.py', '--help'] test.py