Python | sys

作者: shwzhao | 来源:发表于2022-06-24 10:25 被阅读0次
    import sys
    

    1. 命令行传参

    • sys.argv
      sys.argv[0]: 脚本名
      sys.argv[1]: 第1个参数
      ...
    $ cat test2.py
    import sys
    
    USAGE = "USAGE: python3 {0} input output".format(sys.argv[0])
    
    print("\n" + USAGE)
    
    input = sys.argv[1]
    
    print("\nThe input file is " + input)
    
    $ python3 test2.py INPUTFILE
    
    USAGE: python3 test2.py input output
    
    The input file is INPUTFILE
    

    2. 程序控制

    • sys.exit(n): 退出程序

    3. 标准输入、输出和错误

    • sys.stdin: 标准输入,可以使Python程序读取来自管道的信息
      sys.stdin.readline()
    • sys.stout: 标准输出
      sys.stout.write()
    • sys.stderr: 标准错误
      可以利用1>2>将不同的输出定位到不同的文件
    $ cat test.py
    import sys
    
    for i in sys.stdin:
        if i.startswith(">"):
            print(i.rstrip(), file=sys.stdout)
        else:
            print(i.rstrip(), file=sys.stderr)
    
    $ cat a.fa
    >gene1
    ATCAGAGC
    >gene2
    CATCGGCAACC
    
    $ cat a.fa | python3 test.py 1> geneid.txt 2> sequence.txt
    $ cat geneid.txt
    >gene1
    >gene2
    $ cat sequence.txt
    ATCAGAGC
    CATCGGCAACC
    

    4. 查看信息

    • sys.path: 查找模块所在目录
    • sys.platform: 返回操作系统名称
    • sys.version: 查看Python的版本信息
    • sys.modules: 字典形式返回已经导入的模块
    >>> sys.platform
    'linux'
    >>> sys.version
    '3.8.5 (default, Sep  4 2020, 07:30:14) \n[GCC 7.3.0]'
    

    相关文章

      网友评论

        本文标题:Python | sys

        本文链接:https://www.haomeiwen.com/subject/soeevrtx.html