python sys模块

sys.stdin(标准输入), sys.stdout(标准输出), sys.stderr(错误输出)

stdin,stdout,stderr变量包含与标准I/O流对应的流对象,如果需要更好的控制输出,而print不能满足要求,那么就可以使用它们。这些对象也可以被替换,这时候就可以重定向输出和输入到其他设备,或者以非标准的方式来处理它们

标准输入:
一般为键盘输出,stdin对象为解释器提供输入字符流,一般使用input()函数

import sys
x=sys.stdin.readline()
print(x)

执行过程(绿色为用户输入,白色为系统输出):
在这里插入图片描述
sys.stdin与input:
当我们在使用input(“description”)的时候,事实上是先把提示信息输出,然后捕获输入,以下程序是等价的:

import sys

#程序1
x=input("hello"+"\n")

#程序2
print("hello")
y=sys.stdin.readline()

标准输出:
一般为屏幕,stdout对象接收到print语句产生的输出:

import sys
sys.stdout.write("test")

输出:
test

sys.stdout与print:
当在python中打印对象调用print obj的时候,实际上是调用了sys.stdout.write(obj+’\n’);print会调用sys.stdout的write方法,并追加了一个换行符,以下两段程序在事实上等价:

import sys

#程序1
print("test")

#程序2
sys.stdout.write("test"+'\n')

错误输出:
一般是错误信息,stderr对象接收出错的信息

sys.argv:

这个变量内部存储了命令行传入python程序的变量,存储方式为list,argv[0]是python脚本的名字

sys.version_info:

这个变量存储着关于版本信息的五个元素的元组,分别是major, minor, micro, releaselevel, serial。其中除了releaselevel外的元素都是interger类型,releaselevel的值为’alpha’, ‘beta’, ‘candidate’, 或者’final’。以python2.0为例,它的的version_info为(2, 0, 0, ‘final’, 0)。元组的的信息可以以名字为属性名进行提取,也可以通过下标进行访问,例如如下的两种访问方式是等价的:

  • sys.version_info[0]
  • sys.version_info.major

参考:
https://blog.csdn.net/Alawaka2018/article/details/80784893
https://blog.csdn.net/zyc_love_study/article/details/78983817
sys模块

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值