码迷,mamicode.com
首页 > 编程语言 > 详细

python标准库之sys模块 学习

时间:2017-09-04 14:50:54      阅读:153      评论:0      收藏:0      [点我收藏+]

标签:pen   命令   配置   代码   ecif   har   pre   option   specified   

通过这节学习来知道如何在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

 

python标准库之sys模块 学习

标签:pen   命令   配置   代码   ecif   har   pre   option   specified   

原文地址:http://www.cnblogs.com/shidi/p/7473091.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!