python open写入文件_Python

文件读写

程序运行时所产生的数据,是存储在内存里面的。当我们终止程序或者计算机被关机时,内存就被会清空,数据就被全部丢失。我们需要把有用的数据从内存迁移到磁盘等永久存储设备,文件读写就是一种迁移方式。

在Python中,文件的读写操作,由open这个内置模块实现。

读文件

r

>>> f = open('filename','r')

>>> f

<_io.TextIOWrapper name='main.py' mode='r' encoding='UTF-8'> # 文件对象

>>> f.read() # 读取所以内容

>>> f.read(size) # 读取指定内容

>>> f.readline() # 读取一行,并且把指针指向下一行

>>> f.readlines() # 以行为单位分割成一个列表

>>> f.close() # 关闭文件对象,释放资源

# readline 遍历

>>> while True:

>>> line = f.readline()

>>> if line:

>>> print(line)

>>> else:

>>> break

>>> f.close()

'line1'

'line2'

'line3'

...

# readlines 遍历

>>> for line in f.readlines():

>>> line.strip() # strip 字符串方法,去除两边空格 \n 换行符等..

>>> f.close()

'line1'

'line2'

'line3'

...

写文件

w

f = open('filename', 'w')

f.write('hello!')

f.close()

# 读文件时,如果文件不存在,会报错。而写文件时,如果文件不存在则创建它。

a

f = open('filename', 'a') # w 清空文件写入,a 追加到文件末尾写入

r只读,w、a只写,如果想要既可以读,又可以写,可以使用r+、w+、a+等模式。

with

上下文管理器

>>> with open('filename', 'r') as f:

>>> f.read()

# with 中代码块的内容执行完毕,自动调用 f.close() 释放资源

with 的实现,参考 - 上下文管理器

字符编码

encoding

# open 默认针对文件内容解析的编码的 utf-8,我们可以自己指定编码

# ignore 忽略编码报错,即使乱码也强制读取

f = open('filename', 'r', encoding='gbk', errors='ignore')

参考 - 字符编码

二进制

rb、wb

# 读取图片、视频等非文本对象、需要用二进制读取

f = open('filename', 'rb') # wb 写入 byte 数据

f.read()

b'\0x1'

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值