python-学习 open()函数

python open学习

open()函数

一般情况下,使用open()函数时只需要调入文件名参数,而不添加其它任何参数,就可以获取文件内容。相反,如果要向文件中添加信息,就必须制定一个模式参数,用来声明它准备做什么,这个模式参数才是open()的灵魂。以下下代码是open()函数的使用语法:

open(name[,mode[,buffering]])

其中,name参数表示需要打开的文件名称,mode是打开模式,
open()函数的第三个参数用来控制文件的缓冲,默认值为0,
表示不缓冲,设置为1就会有缓冲。

也就是说当我们使用open()函数打开文件时,程序首先会查询open()函数的文件名称,然后才是文件的模式。文件模式是相当重要的一个参数。默认情况下,该函数的默认模式参数为r,用来只读打开文件,如果读取特殊文件(例如视频或者图片文件),那么必须使用b模式。

文件格式
t:以文本格式打开文件(默认)。一般用于文本文件,如:txt。

b:以二进制格式打开文件。一般用于非文本文件,如:图片。
这一类参数可以与其它的模式参数组合使用,用于指定打开文件的格式。

读写模式
r:以只读方式打开文件(默认模式)。文件指针定位在文件头的位置。如果文件不存在会报错。

w:以只写方式打开文件。如果文件存在,则打开文件,清空文件内容,从文件头开始编辑;如果文件不存在,则创建新文件,打开编辑。

a:以追加方式打开文件,同样是只写,不允许进行读操作。如果文件存在,则打开文件,将文件指针定位到文件尾。因此,新的内容是追加在已有内容之后。如果文件不存在,则创建新文件进行写入。

+:打开一个文件进行更新(可读写)。注意:该模式不能单独使用,需要与r/w/a组合使用。文件指针的位置取决于另一个组合参数。

组合模式
r+:打开一个文件用于读写。如果文件存在,则打开文件,将文件指针定位在文件头,新写入的内容在原有内容的前面;如果文件不存在会报错。

w+:打开一个文件用于读写。如果文件存在,则打开文件,清空原有内容,进入编辑模式;如果文件不存在,则创建一个新文件进行读写操作。

a+:以追加模式打开一个文件用于读写。如果文件存在,则打开文件,将文件指针定位在文件尾,新写入的内容在原有内容的后面;如果文件不存在,则创建一个新文件用于读写。

所有上面这些模式默认都是t——文本模式,如果要以二进制模式打开,需要加上参数b,如:rb、rb+、wb、wb+、ab、ab+。

在了解了各种模式参数的具体用法后,根据您要打开的文件类型,以及打开文件后的操作类型来选用正确的mode参数即可。

read(),readline(),readlines()

with open(r'C:\Users\Administrator\Desktop\python学习1.txt','a') as f:
	f.write('这是第一句测试!')
	f.write('\n')
	f.write('这是第二句测试!')
with open(r'C:\Users\Administrator\Desktop\python学习1.txt') as f:
	print(f.read())   #read(size) size表示读取文件的大小 不写为读取全部!
#输出为:
这是第一句测试!
这是第二句测试!


with open(r'C:\Users\Administrator\Desktop\python学习1.txt','w') as f:
	f.write('这是第一句测试!')
	f.write('\n')
	f.write('这是第二句测试!')
with open(r'C:\Users\Administrator\Desktop\python学习1.txt') as f:
	print(f.readline())   #输出一行字符,可以理解为遇到换行符终止
#输出为:这是第一句测试!



with open(r'C:\Users\Administrator\Desktop\python学习1.txt','w') as f:
	f.write('这是第一句测试!')
	f.write('\n')
    f.write('这是第二句测试!')
with open(r'C:\Users\Administrator\Desktop\python学习1.txt') as f:
	print(f.readlines())
#输出为:['这是第一句测试!\n', '这是第二句测试!']
#以列表的格式返回全部文本,文本的第几行对应列表的第几个元素!

write和writelines
file.write(str)的参数是一个字符串,就是你要写入文件的内容.
file.writelines(sequence)的参数是序列,比如列表,它会迭代帮你写入文件。和readlines相反!

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
Python中,open函数是一个内置函数,用于打开文件并进行读操作。它的基本用法是:open(file, mode, buffering, encoding, errors, newline, closefd, opener)。其中,file参数是要打开的文件名,mode参数是打开文件的模式,buffering参数是缓冲大小,encoding参数文件的编码方式,errors参数是处理编码错误的方式,newline参数是换行符的处理方式,closefd参数是是否关闭底层文件描述符,opener参数是自定义的打开器。打开文件后,可以进行相应的读操作,最后需要使用my_file.close()来释放文件资源。\[1\] 如果想要更深入地了解open函数的使用,可以参考下一节的内容。同,也可以访问博客地址:https://blog.csdn.net/LaoYuanPython,获取更多关于Python学习资源和支持。\[2\] #### 引用[.reference_title] - *1* [Python open函数详解](https://blog.csdn.net/weixin_44449116/article/details/122799242)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* [第9.1节 Python文件打开函数open简介](https://blog.csdn.net/LaoYuanPython/article/details/97173235)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] - *3* [Python Open函数详解](https://blog.csdn.net/totorobig/article/details/127430672)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

像风一样的男人@

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值