文件处理

文件处理流程:

1.打开文件,得到文件句柄并赋值给一个变量

2.通过句柄对文件进行操作

3.关闭文件

文件打开模式:

r:只读模式,也是默认模式
w:写入模式,新内容覆盖原内容,文件如果不存在将自动创建文件
a:写入模式,将新内容追加到文件末尾
x:创建一个新的文件并写入,如果文件存在,则命令执行失败
b:二进制模式,读取的文件内容以字节返回
t:文本模式,读取的文件内容以字符串返回
+:打开文件进行更新(可读又可写)

 

 with方法,无需close关闭:

1 with open('filename.txt', 'a') as file_1:    # file_1是赋值的变量名,后面再跟可再打开文件,打开多个
2     pass                                     # 此代码块为具体文件操作方法

 

修改文件:

 1 with open('test.txt', encoding='utf-8') as f,\
 2     open('test.bak', 'w', encoding='utf-8') as f2:    # 打开f文件,创建f2文件
 3     for line in f:                                    # 找到满足条件的一行
 4         if '18' in line:
 5             line = line.replace('18', '27')           # 修改该行
 6         f2.write(line)                                # 写入f2文件
 7 
 8 import os
 9 os.remove('test.txt')                # 删除文件
10 os.rename('test.bak', 'test.txt')    # 重命名文件

 

 

文件读取:

1 # 文件读取 ----------------------------
2 # 文件内容要保存在变量中才能读取
3 # open()打开默认'r'(只读模式)  read()读取  close()关闭
4 
5 f = open("baolu.txt")         # 打开baolu.txt文件
6 print(f.read())               # 读取文件内容并打印。read把文件中所有内容全部读取并保存到一个字符串中。
7 f.close()                     # 关闭文件是为了让其它程序使用它

 

文件写入:

1 # 文件写入 ----------------------------
2 f = open("baolu.txt", "a")    # 打开baolu.txt文件,属性为'a'结尾追加写入,'w'为(覆盖)写入
3 f.write("江苏·常州")           # 调用write()函数写入新内容
4 f.close()                     # 关闭文件是为了让其它程序使用它

 

列表写入:

1 # 列表写入 ----------------------------
2 # writelines()
3 
4 f = open("baolu.txt", "a")          # 打开baolu.txt文件
5 list_1 = ['天气', '8', '', '晴朗']  # 调用write()函数写入新内容
6 f.writelines(list_1)                # 将列表写入文件(内容追加至文件末,因为上面打开类型是a)
7 f.close()                           # 关闭文件

 

posted @ 2018-06-26 13:32  宝露  阅读(108)  评论(0)    收藏  举报