python open函数参数_Python open函数详解:打开指定文件

5d1c447c33f0b758.jpg

掌握了各种操作目录字符串或目录的函数之后,接下来可以准备读写文件了。在进行文件读写之前,首先要打开文件。

Python 提供了一个内置的 open() 函数,该函数用于打开指定文件。

open() 函数的语法格式如下:open(file_name [, access_mode] [, buffering])

在上面的语法格式中,只有第一个参数是必需的,该参数代表要打开文件的路径。access_mode 和 bufering 参数都是可选的。

在打开文件之后,就可调用文件对象的属性和方法了。文件对象支持如下常见的属性:

file.closed:该属性返回文件是否己经关闭。

file.mode:该属性返回被打开文件的访问模式。

file.name:该属性返回文件的名称。

如下程序简单示范了如何打开文件和访问被打开文件的属性:# 以默认方式打开文件

f = open('open_test.py')

# 访问文件的编码方式

print(f.encoding) # cp936

# 访问文件的访问模式

print(f.mode) # r

# 访问文件是否已经关闭

print(f.closed) # False

# 访问文件对象打开的文件名

print(f.name) # open_test.py

上面程序使用 open() 内置函数打开了 open_test.py 文件,接下来程序访问了被打开文件的各属性。运行上面程序,可以看到如下输出结果:cp936

r

False

open_test.py

从上面的输出结果可以看出,open() 函数默认打开文件的模式是“r”,也就是只读模式。下面详细讲解 open() 函数支持的不同模式。

文件打开模式

open() 函数支持的文件打开模式如下图所示

模式意义

r只读模式

w写模式

a追加模式

+读写模式,可与其他模式结合使用。比如 r+ 代表读写模式,w+ 也代表读写模式

b二进制模式,可与其他模式结合使用。比如 rb 代表二进制只读模式,rb+ 代表二进制读写模式,ab 代表二进制追加模式

可能有读者感到疑惑,w 本身就代表写模式,w+ 还有什么意义呢?

简单来说,w 只是代表写模式,而 w+ 则代表读写模式,但实际上它们的差别并不大。因为不管是 w 还是 w+ 模式,当使用这两种模式打开指定文件时,open() 函数都会立即清空文件内容,实际上都无法读取文件内容。

根据上面的介绍不难看出,如果希望调用 open() 函数打开指定文件后,该文件中的内容能被保留下来,那么程序就不能使用 w 或 w+ 模式。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Pythonopen函数有多个参数。其中,第一个参数file是指要打开文件名或文件路径。如果文件Python代码在同一文件夹下,可以直接写文件名。如果文件不在同一文件夹下,需要写明文件路径。 第二个参数mode是指打开文件的模式,常见的模式有'r'表示只读,'w'表示写入,'a'表示追加等等。如果不指定模式,则默认为'r'模式。 另外,open函数还可以接收可选的第三个参数encoding,用于指定打开文件时的编码方式。默认情况下,采用的是系统默认的编码方式。 在使用open函数打开文件后,我们需要使用close方法来关闭文件,以释放资源。关闭语法为:文件对象.close()。文件对象是open函数的返回值,即打开文件后得到的文件对象。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [Python函数综合案例.md](https://download.csdn.net/download/qq_42431718/88241199)[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^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] - *2* *3* [Python open 函数](https://blog.csdn.net/a379749/article/details/123994571)[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^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值