对于文件操作

打开文件

file_object = open(file_name, access_mode='r', buffering=-1)

参数:

file_name 为文件名,注意使用单引号或者双引号
access_mode 为打开文件的模式。’r’ :打开后只读,不能编辑或者删除 , ‘w’: 可写,打开先会清空原来文件的内容,然后写 , ‘a’= 保留原来的内容并且追加写;
buffering 为访问文件所采用的缓冲方式。 0: 表示不缓冲,1:缓冲一行数据,其余大于1的值代表缓冲区大小
encoding: 字符编码,例如 ‘UTF-8’

注意⚠️:打开文件操作完后一定要关闭文件。

读文件

file_object.read() 可以设置读取的字节数,默认为-1,文件将被读取直至末尾
file_object.readline()读取文件的一行(按照换行符来判断)
file_object.readlines()读取所有(剩余)行然后把他们作为一个字符串列表返回

  1. #打开文件
  2. file_obj = open("test.txt")
  3. # 读取全部文件内容
  4. # print(file_obj.read())
  5. # 读取文件一行内容
  6. print(file_obj.readline())
  7. # 读取文件多行 返回列表
  8. print(file_obj.readlines())
  9. # 关闭
  10. file_obj.close()

写文件

file_obj.write()把含有文本数据或者二进制数据块的字符串写入到文件中去。
file_obj.writelines()接受一个字符串作为参数,将他们写入文件,不会自动添加换行符,需要自己加上换行符

文件内移动

seek() 可以在文件中移动文件指针到不同的为止,参数offset字节代表相对于某个位置的偏移量,位置默认为0

拷贝文件

  1. # 复制文件
  2. # with open 方法可以打开文件并且自动结束后关闭
  3. with open("test.txt") as f1:
  4. s=f1.read()
  5. with open("output.txt",'a') as f2:
  6. f2.write(s)