Python 3 入门手札(14)档案存取

本文详细介绍Python内建open()函数的使用方法,包括开启、读取、写入档案及关闭档案的操作,同时解释不同模式和编码方式的应用。文章还介绍了如何使用with语句确保档案在操作结束后自动关闭。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Python 内建的 open() 函式可用来开启档案,它会传回一个档案对象,然后我们即可用档案对象的 read(), close() 等方法来操作档案。例如:

f = open('a.txt')    # 以读取模式开启 a.txt 文件并传回一个档案对象
data = f.read()      # 读取档案内容
f.close()            # 关闭档案

开启档案时的参数设定

在使用 open() 开启档案时,较常用的参数有3 个:

open(filename, mode, encoding=编码方式)   # 后面两个参数可省略

filename 参数为文件名,可以是相对路径(例如:a.txt)或绝对路径(例如:c:/pybook/a.txtx)。只有 filename 参数时,表示要用读取模式开启已存在的文本文件,例如:

f1 = open('a.txt')
f2 = open('sub/b.txt')
f3 = open('c:/py/c.txt')

mode 参数为开启模式,常用的模式有以下 3 种:
在这里插入图片描述

如果要开启的档案不存在,用 “r” 开启时会发生 FileNotFoundError 的异常错误,因为无法读取。用 “w” 或 “a” 开启则会先建立档案以供写入数据。

也可在模式后面加 + 表示可以「读+写」,若加 t 或 b 则表示要以文本模式或二进制模式开启档案,未指定时预设为文本模式。

encoding 参数为档案的编码方式,常用的有 ‘utf-8’。此参数要以指名参数(encoding=)来指定。例如:

f = open('a.txt', encoding='utf-8')

档案的读写与关闭

档案对象的常用操作方法有以下几种:
在这里插入图片描述
档案在使用完之后要记得用 close() 关闭,否则档案可能会被锁定而导致其他程序无法开启。

使用 with 确保外部资源(如档案)在用完后会关闭

当我们开启外部资源时,例如开启档案、摄影机或麦克风等,在使用完毕后必须记得将之关闭,以免持续占用资源而导致其他程序无法使用。使用 with 指令可以确保资源在使用后会自动关闭,这样就不会担心忘记关了。

with 的用法就是将「变量 = open(…)」改写成:

with open(….) as 变数:
    程序区块

在 with 的程序区块中可以开启资源(如档案)进行各种操作,当区块结束时,Python 就会自动将开启的资源关闭,因此也不需要再使用 close() 来关闭。例如:

with open('a.txt') as f:
    s = f.read(5)

参考:
《Python 技术者们实践!》施威铭研究室 着,旗标出版社

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值