python提取文件_Python文件读取常用方法

1. 关于读取文件

f.read()

读取文件中所有内容

f.readline()

读取第一行的内容

f.readlines()

读取文件里面所有内容,把每行的内容放到一个list里面

注:因为文件指针的作用,如果以上方法连用,会有读取影响

使用方法请参见:http://www.cnblogs.com/yun1108/p/8967334.html

2. f.flush() :刷新缓冲区,立即写到磁盘上

3. f.seek(index) : 移动文件指针到指定的下标处,即从指定的下标处开始读取文件,但写入还是从最后开始写入

4. with open : 用完后自动关闭文件,省去了手动添加f.close()功能 例子:修改文件

#第一种,适合读取小一些的文件

with open('users','a+') as fw:

fw.seek(0)#用r+,就可省略这一步

result =fw.read()

new_result= result.replace('bcd','python')

fw.seek(0)

fw.truncate()#清空文件内容

fw.write(new_result)print(new_result)#第二种,读取大文件并修改

importos

with open('users') as fr,open('.users','w',encoding='utf-8') as fw: #.users是一个临时文件

for line in fr:#从需要修改的文件里面读文件

new_line=line.replace('python','修改文件')

fw.write(new_line)

os.remove('users') #删除原文件

os.rename('.users','users') #将临时文件重命名为users

5. 循环文件 --- 高效读取文件

f=open('users','a+',encoding='utf-8') #f:文件对象,或者文件句柄#文件中内容为:#abc,123#qwe,456

#1. 循环读取文件中的内容并存入字典

d={}

f.seek(0)while 1: #第一种,但要求文件里不能有空行,如有空行,则只能读取到空行的上一行

line=f.readline().strip()ifline:#pass #什么也不做

user,passwd=line.split(',')

d[user]=passwdelse:break

print(d) #输出内容:{'abc': '123', 'qwe': '456'}

#2. 直接循环文件对象f,每次取的就是文件里的每一行

f.seek(0) #如果open文件时是r+,可省略这步

for i inf:print('每次循环的是',i)#输出内容:#每次循环的是 abc,123#每次循环的是 qwe,456

l=['abc123\n','bcd123\n']

f.writelines(l)#会循环list里面的每个元素并写进文件中,此方法用于list,如果是字符串则直接用write写即可#文件中的内容更新为:#abc,123#qwe,456#abc123#bcd123

6. encoding='utf-8' : 如果读写的文件中有中文,要加上

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值