文件的操作方法

文件只读

  • 只读模式
  • r: 以只读方式打开文件。文件的指针将会放在文件的开头。
  • rb: 以二进制格式打开一个文件进行只读。指针将会放在文件的开头。一般进行非文本文件如图片等。
f1 = open('文件位置', mode='r', encoding='utf-8')  # 文件位置可以为绝对为位置,在根目录下开始的位置,在与程序在相同目录下的为相对位置# mode 填写读写方式   r:文件只读   rb:  f = open('文件位置', mode='rb')  不需写encoding,默认编码方式是bytes类型content = f1.read()print(content)f1.close()# 可以定义读的多少  以字符为单位f2 = open('sos.txt', mode='r', encoding='utf-8')content_2 = f2.read(2)  # 读出来的都是字符print(content_2)f2.close()

文件只写

  • 只写模式
  • w: 打开一个文件只进行写入。如果该文件已存在则打开文件,则把原文件的内容全部清除再写。如果该文件不存在,则创建新文件。
  • wb: 以二进制形式打开一个文件只进行写入。如果该文件已存在则打开文件,则把原文件的内容全部清除再写。如果该文件不存在,则创建新文件。一般进行非文本文件如图片。
# f = open('sos.txt', mode='w', encoding='utf-8')# f.write('3838438')  # .write:所需写入的内容# f.close()f3 = open('sos.jpeg', mode='wb')f3.write('6666666'.encode('utf-8'))  # 默认编码方式用.encode定义编码方式f3.close()

文件追加

  • 追加模式
  • a: 打开一个文件进行追加。如果该文件已存在,则将指针放在文件的结尾。新的内容将会被写入到已有内容之后。如果该文件不存在,则创建新文件进行写入。
  • ab: 以二进制的形式打开一个文件进行追加,如果文件存在则在文件结尾处将新的内容写入,如果不存在则创建新文件写入。
f4 = open('sos.txt', mode='a', encoding='utf-8')f4.write('88888')f4.close()f5 = open('sos.jpeg', mode='ab')f5.write('999'.encode('utf-8'))f5.close()

文件读写

  • 读写模式
  • r+ : 打开一个文件进行读写。指针将会放在文件的开头。
  • r+b: 以二进制格式打开一个文件进行读写。指针将会放在文件的开头。一般进行非文本文件的读写。
f6 = open('sos.txt', mode='r+', encoding='utf-8')print(f6.read())f6.write('中国')f6.close()f7 = open('sos', mode='r+b')   # bytes类型 读也会显示为bytes类型 注意汉子print(f7.read())f7.write('38'.encode('utf-8'))f7.close()

文件写读

  • 写读模式
  • w+: 打开一个文件进行读写。如果该文件已存在则打开文件,并从开头开始编辑,即原有内容会被删除。如果该文件不存在,则创建新文件。
  • wb+: 以二进制格式打开一个文件进行读写。如果该文件已存在则打开文件,从开头开始编辑,即原有内容会被删除。如果该文件不存在,创建新文件。一般进行非文本文件处理等。
  • PS: 如果不加seek 则不会读出东西
f8 = open('sos.txt', mode='w+', encoding='utf-8')f8.write('ss,dd')f8.seek(0)  # 移动光标到句头位置print(f8.read())f8.close()

操作光标

  • seek:操作光标是按字节去找(注意中文1字符=3字节)
f9 = open('sos.text', mode='r+', encoding='utf-8')counter = f9.seek(3)  # 是按字节定光标的位置print(counter)print(f9.read())f9.close()

获取光标位置

  • .tell:获取光标位置
f0 = open('sos.txt', mode='r+', encoding='utf-8')counter = f0.seek(3)print(f0.tell())  # 告知光标的位置f0.close()

自动关闭close

  • 关键词:with # 可以打开多个文件
with open('sos.txt', mode='r', encoding='utf-8') as fs,    open('day_5.txt', mode='r', encoding='utf-8') as fs1:    print(fs.read(), fs1.read())




pythondocx 怎么在指定位置输入文字 python 文件指定位置写入_打开文件


#Python# #软件开发##Python编程从入门到实践#