python文件的读写

读文件
打开文件使用open()方法。
python文件对象提供了三个“读”方法: read()、readline() 和 readlines()。每种方法可以接受一个变量以限制每次读取的数据量。

  • read()
    每次读取整个文件,它通常用于将文件内容放到一个字符串变量中。如果文件大于可用内存,为了保险起见,可以反复调用read(size)方法,每次最多读取size个字节的内容。
with open('D:/test.txt','r') as f:
    print(f.read())

-readlines()自动将文件内容分析成一个行的列表,该列表可以由 Python 的 for … in … 结构进行处理。

with open('D:/test.txt','r') as f:
    lines=f.readlines()
    for line in lines:
        print(line.rstrip())#rstrip(char)删除字符串末尾的字符,默认为空格
  • readline() 每次只读取一行,通常比readlines() 慢得多。仅当没有足够内存可以一次读取整个文件时,才应该使用
    readline()。
with open('D:/test.txt','r') as f:
  lines=f.readline()
  print(lines)

写文件
python文件对象提供了两个“写”方法: write() 和 writelines()。

  • 使用write()方法,传入标识符’w’或者’wb’表示写文本文件或写二进制文件:
with open('D:/test.txt','w') as f:
    f.write('hello python')

注:'w’这个模式是酱紫:如果没有这个文件,就创建一个;如果有,那么就会先把原文件的内容清空再写入新的东西。所以若不想清空原来的内容而是直接在后面追加新的内容,就用’a’这个模式。

  • 使用writelines()方法,writelines()方法和readlines()方法对应,也是针对列表的操作。它接收一个字符串列表作为参数,将他们写入到文件中,换行符不会自动的加入,因此,需要显式的加入换行符\n。
with open('D:/test.txt','w') as f:
    f.writelines(['hello python\n','hello world\n'])
with open('D:/test.txt','r') as f:
    print(f.read())
【out】
hello python
hello world    

关于open()的mode参数
‘r’:读

‘w’:写

‘a’:追加

‘r+’ == r+w(可读可写,文件若不存在就报错(IOError))

‘w+’ == w+r(可读可写,文件若不存在就创建)

‘a+’ ==a+r(可追加可写,文件若不存在就创建)

对应的,如果是二进制文件,就都加一个b就好啦:

‘rb’  ‘wb’  ‘ab’  ‘rb+’  ‘wb+’  ‘ab+’

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值