开发者学堂课程【Python 入门 2020年版:标准输入&标准输出&错误输出】学习笔记,与课程紧密联系,让用户快速学习知识。
课程地址:https://developer.aliyun.com/learning/course/639/detail/10404
标准输入&标准输出&错误输出
内容介绍
一、sys.stdin 的作用
二、sys.stdout 的作用
三、sys.stderr 的作用
一、sys.stdin 的作用
sys.stdin 是可以像 input 一样,接收用户的输入。
接收用户的输入,和 input 相关接收用户的输入,其实就是读取键盘里输入的数据。
例如:
s_in = sys.stdin
#作用是拿到文件对象后,文件连接到键盘的输出台,input 就是读取 sys.stdin 里的数据。
while True:
content = s_in.readline()
if content == ‘\n ’
break
print(content)
#打印操作完成后,出现空字符串,程序就结束,死循环不断的读取键盘输入数据,读一行打印一行。
停止操作也可以是:
while True:
content = s_in.read
line
(
)
.rstrip(‘\n’)
print(content)
content = s_in.readline().rstrip(‘\n’)
输入的内容是 xxx\n,而不是 xxx,所以可以直接拿掉 xxx 后的\n,让输入的结果不再换行。
写一个死循环不断地读取数据,s_in 表示读取键盘输入内容,readline()表示连续输入内容,点击换行就会打印输入的数据,不管你输入什么内容,只要点击换行就会联系打印,写一行读一行,.rstrip(‘\n’)表示取消掉“换行才打印”这个操作。
二、sys.stdout 的作用
stdout 和 stdin 默认都是控制台。
sys.stdout 是标准输出,修改 sys.stdout 可以改变默认输出位置。
例如:
若直接打印 print(1/0),程序会报错,不使用 stdout,代码打印的标准输出和错误输出都会在控制台被打印出来。
sys.stdout = open( 'stdout.txt', 'w', encoding='utf8')
#只使用 stdout 时,错误的打印内容不会被打印,正确的内容会被打印进 stdout.txt 文件中,不会在控制台输出。
print( ' hello')
print( 'yes ')
print( 'good ')
#打印正确输出,并且全部放入 stdout.txt 文件中。
三、sys.stderr 的作用
sys.stderr 是错误输出,修改 sys.stderr 可以改变错误输出的默认位。
例如:
#err == > error 错误的缩写
sys.stderr = open( 'stderr.txt', 'w', encoding='utf8')
#会将错误内容打印进stderr.txt文件中。
print(1 / 0)
#执行后,控制台无任何输出,错误输出被写入 stderr.txt 文件中,可以起到记录错误内容的作用。
其中,sys.stdout 和 sys.stderr 默认都是在控制台。