python的sys模块

sys.argv 命令行参数List,第一个元素是程序本身路径  【注】PyCharm中,可以在右键菜单“修改运行配置”中增加参数

sys.exit(n) 退出程序,正常退出时exit(0)或exit();错误退出sys.exit(1),会引发一个异常:SystemExit,如果这个异常没有被捕获,那么python解释器将会退出。如果有捕获此异常的代码,那么这些代码还是会执行。捕获这个异常可以做一些额外的清理工作。

sys.version 获取Python解释程序的版本信息

sys.path 返回模块的搜索路径,初始化时使用PYTHONPATH环境变量的值

sys.platform 返回操作系统平台名称

#!/usr/bin/env python
# _*_ coding:utf-8 _*_
import sys


def readfile(f_name):  # 定义readfile函数,从文件中读出文件内容
    f = open(f_name, 'r', encoding='utf-8')
    while True:
        line = f.readline()
        if len(line) == 0:
            break
        print(line)  # notice comma 分别输出每行内容
    f.close()


def main():
    print(f'模块的搜索路径:{sys.path}')
    print(f'python解释器的版本:{sys.version}')
    print(f'操作系统平台:{sys.platform}')
    print(sys.argv)  # sys.argv是用列表的形式来获取命令行参数的,sys.argv[0]表示代码本身文件路径,所以参数从sys.argv[1]开始
    if len(sys.argv) < 2:
        print('没带参数,无动作')
        sys.exit()  # 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('文件版本号为v1.2')
        elif option == 'help':  # 当命令行参数为--help时,显示相关帮助内容
            print("""这个模块的作用是练习获取命令参数
--version:显示文件版本
--help:获取帮助
其它参数:默认是文件名,并显示全部文件的内容
""")
        else:
            print('未知的特殊参数')
            sys.exit()
    else:  # 如果不是特殊参数,则后面的参数都默认为是文件名,则显示文件的内容
        for f_name in sys.argv[1:]:  # 当参数为文件名时,传入readfile,读出其内容
            readfile(f_name)


if __name__ == '__main__':
    main()

 

上一篇:Python中 sys.argv()的用法


下一篇:llvm.20.SwiftCompiler.Compiler-Driver