最新要闻

广告

手机

光庭信息跌4.57% 2021上市超募11亿2022扣非降74% 时快讯

光庭信息跌4.57% 2021上市超募11亿2022扣非降74% 时快讯

搜狐汽车全球快讯 | 大众汽车最新专利曝光:仪表支持拆卸 可用手机、平板替代-环球关注

搜狐汽车全球快讯 | 大众汽车最新专利曝光:仪表支持拆卸 可用手机、平板替代-环球关注

家电

Python中标准输入(stdin)、标准输出(stdout)、标准错误(stdout)的用法_全球讯息

来源:博客园

1.标准输入

input()、raw_input()

Python 3.x 中 input() 函数可以实现提示输入,python 2.x 中要使用 raw_input(),例如:

foo = input("Enter: ")  # python 2.x 要用 raw_input()print("You input: [%s]" % (foo))# 测试执行Enter: abc deYou input: [abc de]     # 读取一行(不含换行符)

sys.stdin


(资料图片仅供参考)

使用 sys.stdin 可以获取标准输入的文件句柄对象,例如:

import sysprint("Enter a line: ")line = sys.stdin.readline()     # 读取一行(包括换行符)print("Line: [%s]\n%s" % (line, "-"*20))print("Enter a character: ")char = sys.stdin.read(1)        # 读取一个字节print("Char: [%s]\n%s" % (char, "-"*20))print("Enter a multi-lines: ")lines = sys.stdin.read()        # 读取到文件尾print("Lines: [%s]" % (lines))# 测试执行Enter a line:This is a single line   <======== 输入了一行,然后回车Line: [This is a single line]                       <======== 输出有换行符--------------------Enter a character:abc                     <======== 输入了三个字节Char: [a]               <======== 只读取了一个字节--------------------Enter a multi-lines:first linesecond linelast line               <======== 输入三行(换行)后,windows 下按 Ctrl+Z,linux 下按 Ctrl + D 结束输入Lines: [bc              <======== 上一次未读完的三个字节(两个字符 + 一个换行符)first linesecond linelast line]                       <======== 最后一行也有换行符

2.标准输出

print

print 可以自动换行,例如:

print("%s is %0.2f, %d is a integer" % ("PI", 3.14, 123))   # 格式同 C 语言中的 printf()print("{0} is {1}, {2} is a integer".format("PI", 3.14, 123))print("{foo} is {bar}, {qux} is a integer".format(foo="PI", bar=3.14, qux=123))#Python小白学习交流群:711312441# 测试执行PI is 3.14, 123 is a integerPI is 3.14, 123 is a integerPI is 3.14, 123 is a integer

sys.stdout

使用 sys.stdout 可以获取标准输出的文件句柄对象,例如:

import syssys.stdout.write("%s is %0.2f, %d is a integer\n" % ("PI", 3.14, 123))   # 格式同 C 语言中的 printf()sys.stdout.write("{0} is {1}, {2} is a integer\n".format("PI", 3.14, 123))sys.stdout.write("{foo} is {bar}, {qux} is a integer\n".format(foo="PI", bar=3.14, qux=123))

执行结果与 print 的示例一样。(注:write()不会自动换行,这里加了换行符)

3.标准错误

sys.stdout

使用 sys.stderr 可以获取标准错误的文件句柄对象,示例略(将 sys.stdout 中示例中的 stdout 替换为 stderr 即可)。

关键词: