8:文件读写

Posted mayytest1202

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了8:文件读写相关的知识,希望对你有一定的参考价值。

1. 操作文件的流程:

1、有个文件;
2、打开文件:open(filename)。模式:只读 r、写 w、追加模式 a+。默认以只读模式打开;
3、操作文件:进行读操作或写操作;
4、关闭文件:close()。

2. 文件操作模式

  • r 只读,打开的文件不存在,会报错.默认以 r 模式打开。
  • w 只写,会清空原来文件的内容,若文件不存在,会新建。
  • a 追加写,不会清空,若文件不存在,会新建;但是不能读。

  • r+ 读写模式,打开不存在的文件会报错。
  • w+ 写读模式,会把文件内容清空。
  • a+ 追加读模式。文件指针在最后,需要先移动文件指针,才能读到内容。文件不存在的时候不会报错。
  • wb 二进制模式的写,如视频、MP3、图片。

2.1 示例

#以 w 模式打开文件,进行写操作时会把文件中原来的内容覆盖掉

filename = ‘user.txt‘
f = open(filename, ‘w‘) 
f.write(‘test,123‘)
f.close()

# a+ 模式打开文件后会把文件指针移动到最后面,如果直接读会读不到东西。
f = open(filename, ‘a+‘) 
f.seek(0) #移动文件指针到开始位置
print(f.read()) #获取到文件中的所有内容
f.write(‘test2,123456
‘)
f.flush()
f.close()

3. read() 、 readline()、readlines()

f = open(‘users.txt‘, ‘a+‘, encoding=‘utf-8‘)

#print(‘第一次读‘, f.read()) # 一次性读完所有内容
#print(‘第二次读‘, f.read()) # 第二次去读的时候不会读到内容

print(f.readlines()) # 获取到文件所有行, 获取一个列表,每一行是列表中的一个元素
f.readline() # 一行一行的读

4. write()、writelines()

 a = [‘user1,12344‘, ‘user2,23456‘]
 # 使用 write 方法把列表 a 的内容写进文件里,需要循环
 for i in a:
     f.write(i+‘
‘)
 # 使用 wrtielines 则不需要。
 f.writelines(a)

# 如果是要把一个字符串写进文件直接用 write, 如果是一个 list,就用 writelines。



以上是关于8:文件读写的主要内容,如果未能解决你的问题,请参考以下文章

matlab2021版关于csv文件读写的一些方法

Xcode 8 Autocomplete Broken - 仅显示有限的用户代码片段 - 知道为啥吗?

8:文件读写

ES7-Es8 js代码片段

有没有办法将2个非常相似的代码片段组合成一个函数并重复?

文件的读写安卓8