Python中标准输入(stdin)、标准输出(stdout)、标准错误(stdout)的用法

简介: 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 de
You input: [abc de]     # 读取一行(不含换行符)

sys.stdin

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

import sys

print("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 line
second line
last line               <======== 输入三行(换行)后,windows 下按 Ctrl+Z,linux 下按 Ctrl + D 结束输入
Lines: [bc              <======== 上一次未读完的三个字节(两个字符 + 一个换行符)
first line
second line
last 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 integer
PI is 3.14, 123 is a integer
PI is 3.14, 123 is a integer

sys.stdout

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

import sys
sys.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 即可)。

相关文章
|
14天前
|
Python
python基本用法
【9月更文挑战第5天】python基本用法
35 7
|
3月前
|
人工智能 算法 Python
【随手记】python的heapq库的基本用法
【随手记】python的heapq库的基本用法
45 1
|
5天前
|
人工智能 数据挖掘 开发者
Python用法
Python用法
19 10
|
3月前
|
Python
掌握 Python3 函数高级用法:详解与应用
掌握 Python3 函数高级用法:详解与应用
|
3月前
|
Python
掌握Python中循环语句的精髓:基础用法与高级技巧
掌握Python中循环语句的精髓:基础用法与高级技巧
|
21天前
|
Python
Python 中 help() 和 dir() 函数的用法
【8月更文挑战第29天】
18 5
|
4月前
|
JSON API 数据格式
详细介绍下PYTHON API的用法
详细介绍下PYTHON API的用法
|
2天前
|
数据处理 开发者 Python
探索Python中的列表推导式在Python编程中,列表推导式是一种简洁而高效的方法,用于从现有的列表创建新列表。本文将深入探讨列表推导式的用法、优势以及一些实际应用示例。
列表推导式是Python提供的一种强大工具,它允许开发者以更简洁的语法快速生成列表。通过结合循环和条件语句,列表推导式能够简化代码结构,提高开发效率。本文详细介绍了列表推导式的基本用法,并通过实例展示了其在数据处理、转换和过滤中的广泛应用。
9 0
|
3月前
|
存储 缓存 Python
深入了解python中元类和连接符的用法
【6月更文挑战第20天】本文介绍包括`type`的多重用途,内建函数的常量,模块属性,类继承的概念,元类的工作原理,可哈希对象的重要性,加权平均值的计算,以及如何找到两个列表的交集。
69 5
深入了解python中元类和连接符的用法
|
1月前
|
安全 Python
【Python】@property用法简述
【Python】@property用法简述