sys 模块提供了底层的接口API,可以和应用外部的系统互动。例如获取命令行参数,接收用户的输入,往外部传递消息和状态。
命令行参数
命令行上的参数,包括脚本的文件名,所有后面的参数,都可以通过 sys.argv 获取。
输出:
-d 参数是解释器负责接收的一个标志位,没有传入到程序里面。`argparse` 模块是专门用来解析命令行参数的。
输入输出流
Python 和 Unix 一样,默认可以访问三种文件描述符。
stdin 是标准输入流,通过从控制台或者通过管道(pipeline)由第三方程序输入。
stdout 是标准输出流,通常输出到控制台或者通过管道为另一个程序输入数据。
stderr 是标准错误流,输出错误信息给用户。
执行:
本例中,使用管道,将 hello.py 文件的内容输入到 sys-stdio.py 程序中,通过输入流 sys.stdin 调用读取函数 read() 获取到数据存储到data。
然后 sys.stdout.write() 函数输出 data 到控制台,刷新数据。
最后使用 print() 函数,输出数据到错误流 sys.stderr,默认指向控制台。
print() 函数通过可选的参数 file,指定数据输出到哪里。
返回状态
从应用中返回退出状态,需要传递一个整数给 exit() 函数。
执行:
shell 变量 $? 返回上一个程序的退出值。
留言与评论(共有 0 条评论) |