学习笔记——Python中的IO问题理解
5.23学习笔记:Python中的IO问题理解
IO是输入和输出。如果任何程序想要与外界交互,都需要使用 IO。与java相比,Python中的IO更加简单易用。
linux输入输出
linux中有三个标准输入输出,分别是STDIN、STDOUT、STDERR,对应的数字分别是0、1、2。
STDIN是标准输入,默认从键盘读取信息;
STDOUT为标准输出,输出结果默认输出到终端;
STDERR 是标准错误,默认输出到终端。
常用的2>&1是指将标准输出和标准错误指定为同一个输出路径。
格式化输出
在python中,我们可以使用print方法来输出信息。
我们看一下打印函数的定义:
print(*objects, sep=' ', end='\n', file=sys.stdout, flush=False)
print 函数将对象打印到由 file 指定的文本流中,以 sep 分隔并以 end 结尾。 sep、end、file 和 flush(如果存在)必须作为关键字参数给出。
所有非关键字参数都转换为字符串并写入流,以 sep 分隔并在末尾附加 end。 sep 和 end 都必须是字符串;它们也可以是 None,这意味着使用默认值。如果没有给出对象, print() 将只写 end。
file 参数必须是带有 write(string) 方法的对象;如果参数不存在或为 None,将使用 sys.stdout。由于要打印的参数被转换为文本字符串,所以 print() 不能用于二进制模式的文件对象。对于这些对象,可以使用 file.write(...)。
输出是否缓存通常由文件决定,但如果flush关键字参数为真,则强制刷新输出流。
可以看到print的输出格式比较简单。下面我们来看看如何丰富输出格式。
格式:
如果要格式化字符串,可以在字符串的开头引号前添加 f 或 F。
这样,我们可以直接在字符串中引入变量值,只需将变量放在 { 和 } 之间即可。