打开文件
open(file, mode=‘rt’, buffering=-1, encoding=None, errors=None, newline=None, closefd=True, opener=None)
file文件地址
>>> f = open('E:/test.txt', 'w') # A
>>> f = open('E:\test.txt', 'w') # 错误方法,反斜杠会转义
>>> f = open('E://test.txt', 'w') # C
>>> f = open('E:\\test.txt', 'w') # D
mode的参数
x 写模式,新建一个文件,如果该文件已存在则会报错。
+打开一个文件进行更新(可读可写)。
w 打开一个文件只用于写入。如果该文件已存在则打开文件,并从开头开始编辑,即原有内容会被删除。如果该文件不存在,创建新文件。(危险)
a 打开一个文件用于追加。如果该文件已存在,文件指针将会放在文件的结尾。也就是说,新的内容将会被写入到已有内容之后。如果该文件不存在,创建新文件进行写入。
r 以只读方式打开文件。文件的指针将会放在文件的开头。这是默认模式。
- 文件的读取方式有两种:
b 二进制模式。
t 文本模式 (默认)。
文件对象的方法
file.close()
关闭文件。关闭后文件不能再进行读写操作。操作完文件记得关闭哦。
(Python拥有垃圾收集机制,会在文件对象的引用计数降至零的时候自动关闭文件,所以在Python编程里,如果忘记关闭文件并不会造成内存泄漏那么危险。
但并不是说就可以不要关闭文件,如果你对文件进行了写入操作,那么你应该在完成写入之后进行关闭文件。因为Python可能会缓存你写入的数据,如果这中间断电了神马的,那些缓存的数据根本就不会写入到文件中。所以,为了安全起见,要养成使用完文件后立刻关闭的优雅习惯。
)
file.read([size])
从文件读取指定的字节数,如果未给定或为负则读取所有。读到哪指针放在哪。
file.readline([size])
读取整行,包括 “\n” 字符。
file.seek(offset[, whence])
移动文件读取指针到指定位置。whence=0表示从文件开头开始算起,1 表示当前位置,2表示文件末尾。汉字占两个字节,如果移动到汉字包含的字节会报错。
file.tell()
返回文件当前(指针)的位置。
file.write(str)
将字符串写入文件,返回的是写入的字符长度。
file.writelines(sequence)
向文件写入一个序列字符串列表,如果需要换行则要自己加入每行的换行符。
list(file)
文件直接读取为列表,每一行为一项。
迭代打印文件每一行
for eachLine in file:
print(eachLine)