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