python sys模块

发布时间:2018-03-02 09:47:12编辑:admin阅读(3608)

    sys模块提供了一系列有关Python运行环境的变量和函数。


    常见用法

    sys.argv

    可以用sys.argv获取当前正在执行的命令行参数的参数列表(list)。

    变量解释

    sys.argv[0]当前程序名

    sys.argv[1]第一个参数

    sys.argv[0]第二个参数


    #!/usr/bin/env python
    # coding: utf-8
    __author__ = 'www.py3study.com'
    
    import sys
    
    # 获取脚本名字
    print('脚本名: %s' %(sys.argv[0]))
    # 获取参数列表
    print('参数列表:')
    for i in sys.argv:
        print(i)
    # 统计参数个数
    print('参数个数: %s'%(len(sys.argv)-1))

    在cmd中执行

    E:\python_script\day5\test4>python test.py 1 2 3

    执行输出


    脚本名: test.py

    参数列表:

    test.py

    1

    2

    3

    参数个数: 3


    sys.path

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

    print(sys.path)

    在cmd中执行

    E:\python_script\day5\test4>python test.py

    执行输出

    ['E:\\python_script\\day5\\test4', 'C:\\Program Files\\Python36\\python36.zip', 'C:\\Program Files\\Python36\\DLLs', 'C:\\Program Files\\Python36\\lib', 'C:\\Progra

    m Files\\Python36', 'C:\\Program Files\\Python36\\lib\\site-packages']


    这个一般在导入模块的时候,需要把项目根目录追加到搜索路径中

    比如test.py的根目录为day5,需要添加环境变量

    import sys,os
    
    BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
    print(BASE_DIR)
    #添加系统环境变量
    sys.path.append(BASE_DIR)
    print(sys.path)

    执行输出

    E:\python_script\day5

    ['E:\\python_script\\day5\\test4', 'E:\\python_script', 'C:\\Program Files\\Python36\\python36.zip', 'C:\\Program Files\\Python36\\DLLs', 'C:\\Program Files\\Python36\\lib', 'C:\\Program Files\\Python36', 'C:\\Program Files\\Python36\\lib\\site-packages', 'E:\\python_script\\day5']


    常用的就是以上2个方法

    下面介绍几个其他方法

    sys.platform

    获取当前执行环境的平台,如win32表示是Windows系统,linux2表示是linux平台

    import sys
    print(sys.platform)

    执行输出 win32


    sys.exit(n)

    调用sys.exit(n)可以中途退出程序,当参数非0时,会引发一个SystemExit异常,从而可以在主程序中捕获该异常。

    import sys
    
    print('running...')
    
    try:
        sys.exit(1)
    except SystemExit:
        print('SystemExit exit 1')
    
    print('exited')

    执行输出

    running...

    SystemExit exit 1

    exited


    sys.version

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

    import sys
    print(sys.version)

    执行输出

    3.6.2 (v3.6.2:5fd33b5, Jul  8 2017, 04:57:36) [MSC v.1900 64 bit (AMD64)]


关键字

上一篇: python os模块

下一篇: python shutil模块