【菜鸟教程笔记】python输入输出
{0:2d}中,0代表第一个参数, :2d表示以两位整数的方式输出
Python提供了input()内置函数从标准输入中读入一行文本。默认的标准输入是键盘。
读和写文件
open()将会返回一个file对象,语法格式为open(filename,mode)
filename:包含了要访问的文件名称的字符串值。
mode:决定了打开文件的模式:只读、写入、追加等
不同模式打开文件的完全列表:
模式 | 描述 |
---|---|
r | 以只读方式打开文件。文件的指针将会放在文件的开头。这是默认模式。 |
rb | 以二进制格式打开一个文件用于只读。文件指针将会放在文件的开头。 |
r+ | 打开一个文件用于读写。文件指针将会放在文件的开头。 |
rb+ | 以二进制格式打开一个文件用于读写。文件指针将会放在文件的开头。 |
w | 打开一个文件只用于写入。如果该文件已存在则打开文件,并从开头开始编辑,即原有内容会被删除。如果该文件不存在,创建新文件。 |
wb | 以二进制格式打开一个文件只用于写入。如果该文件已存在则打开文件,并从开头开始编辑,即原有内容会被删除。如果该文件不存在,创建新文件。 |
w+ | 打开一个文件用于读写。如果该文件已存在则打开文件,并从开头开始编辑,即原有内容会被删除。如果该文件不存在,创建新文件。 |
wb+ | 以二进制格式打开一个文件用于读写。如果该文件已存在则打开文件,并从开头开始编辑,即原有内容会被删除。如果该文件不存在,创建新文件。 |
a | 打开一个文件用于追加。如果该文件已存在,文件指针将会放在文件的结尾。也就是说,新的内容将会被写入到已有内容之后。如果该文件不存在,创建新文件进行写入。 |
ab | 以二进制格式打开一个文件用于追加。如果该文件已存在,文件指针将会放在文件的结尾。也就是说,新的内容将会被写入到已有内容之后。如果该文件不存在,创建新文件进行写入。 |
a+ | 打开一个文件用于读写。如果该文件已存在,文件指针将会放在文件的结尾。文件打开时会是追加模式。如果该文件不存在,创建新文件用于读写。 |
ab+ | 以二进制格式打开一个文件用于追加。如果该文件已存在,文件指针将会放在文件的结尾。如果该文件不存在,创建新文件用于读写。 |
举个例子,将字符串写入到foo.txt中
#!/usr/bin/python3
#打开 一个文件
f=open("/tmp/foo.txt","w")
f.write("Python 是一个非常好的语言。\n是的,的确非常好\n")
#关闭打开的文件
f.close()
(这个例子调用了open函数、write和close属性。因为选择的是w,所以不能调用read方法)
----------新的函数-------
f.readline()会从文件中读取单独的一行,识别的换行符为'\n'。f.readline()如果返回一个空字符串,说明已经读取到最后一行。
调用一次,只能读一行
f.readlines()将返回文件中包含的所有行。 如果设置可选参数sizehint,则读取指定长度的字节,并且将这些字节按行分割。
(以列表形式输出所有行,会显示换行符\n)
也可以通过迭代的形式读取每行:
# 打开一个文件
f = open("/tmp/foo.txt", "r")
for line in f:
print(line, end='')
f.close()
----------------------------------
f.write()用法将string写入文件中。这个方法返回的是写入的字符数。
如果写入的不是字符串,比如,写入的是一个字符串和一个数字组成的元组('hi',2),需要先将其进行转换为字符串
f=open('/qwq/temp.txt','w')
value=('hi',2)
s=str(value)
f.write(s)
f.close()#关闭打开的文件
-----------------------------------
f.close()用于关闭打开的文件。处理完一个文件后,用f.close()来关闭文件并释放系统的资源。如果此时再尝试调用该文件,会抛出异常。
处理一个文件对象时,最好使用with关键字,在结束后会正确地关闭文件。
例:
with open('/tmp/foo.txt', 'r') as f:
read_data=f.read()
----read、readline和readlines的区别