python关闭对象语法_用Python打开和关闭文件

到目前为止,您一直在读取和写入标准输入和输出。现在,我们将看到如何使用实际数据文件。

Python提供了默认情况下处理文件所必需的基本功能和方法。您可以使用文件对象执行大多数文件操作。

open函数

在读取或写入文件之前,必须使用Python的内置open()函数将其打开。此函数创建一个文件对象,该文件对象可用于调用与其关联的其他支持方法。

语法file object = open(file_name [, access_mode][, buffering])

这是参数详细信息-file_name -file_name参数是一个字符串值,其中包含您要访问的文件的名称。

access_mode -access_mode确定必须打开文件的模式,即读取,写入,附加等。下表中给出了可能值的完整列表。这是可选参数,默认文件访问模式为(r)。

缓冲-如果将缓冲值设置为0,则不进行缓冲。如果缓冲值为1,则在访问文件时执行行缓冲。如果将缓冲值指定为大于1的整数,则将按照指示的缓冲区大小执行缓冲操作。如果为负,则缓冲区大小为系统默认值(默认行为)。

这是打开文件的不同模式的列表-序号模式与说明1r

打开一个文件以供只读。文件指针位于文件的开头。这是默认模式。

2rb

打开一个文件,仅以二进制格式读取。文件指针位于文件的开头。这是默认模式。

3r +

打开一个文件以供读取和写入。文件指针放置在文件的开头。

4rb +

打开一个文件,用于以二进制格式读取和写入。文件指针放置在文件的开头。

5w

打开一个仅用于写入的文件。如果文件存在,则覆盖该文件。如果该文件不存在,请创建一个新文件进行写入。

6wb

打开一个文件,仅以二进制格式写入。如果文件存在,则覆盖该文件。如果该文件不存在,则创建一个新文件进行写入。

7w +

打开用于写入和读取的文件。如果文件存在,则覆盖现有文件。如果该文件不存在,请创建一个新文件以进行读写。

8wb +

打开一个文件,以二进制格式进行读写。如果文件存在,则覆盖现有文件。如果该文件不存在,请创建一个新文件以进行读写。

9a

打开一个文件进行追加。如果文件存在,则文件指针位于文件的末尾。也就是说,文件处于附加模式。如果该文件不存在,它将创建一个新文件进行写入。

10ab

打开一个文件以二进制格式追加。如果文件存在,则文件指针位于文件的末尾。也就是说,文件处于附加模式。如果该文件不存在,它将创建一个新文件进行写入。

11a +

打开一个文件以进行附加和读取。如果文件存在,则文件指针位于文件的末尾。该文件以追加模式打开。如果该文件不存在,它将创建一个用于读取和写入的新文件。

12ab +

打开一个文件,以附加和读取二进制格式。如果文件存在,则文件指针位于文件的末尾。该文件以追加模式打开。如果该文件不存在,它将创建一个用于读取和写入的新文件。

文件对象属性

打开文件后,您只有一个文件对象,您可以获得与该文件有关的各种信息。

这是与文件对象相关的所有属性的列表-序号模式与说明1file.closed

如果关闭文件,则返回true,否则返回false。

2file.mode

返回打开文件所使用的访问模式。

3file.name

返回文件名。

4file.softspace

如果print明确需要空间,则返回false,否则返回true。

示例#!/usr/bin/python

# Open a file

fo = open("foo.txt", "wb")

print "Name of the file: ", fo.name

print "Closed or not : ", fo.closed

print "Opening mode : ", fo.mode

print "Softspace flag : ", fo.softspace

输出结果

这产生以下结果-Name of the file: foo.txt

Closed or not : False

Opening mode : wb

Softspace flag : 0

close()方法

close()文件对象的方法将刷新所有未写信息并关闭文件对象,此后将无法再进行写操作。

当文件的引用对象重新分配给另一个文件时,Python自动关闭文件。使用该close()方法关闭文件是一个好习惯。

语法fileObject.close()

示例#!/usr/bin/python

# Open a file

fo = open("foo.txt", "wb")

print "Name of the file: ", fo.name

# Close opend file

fo.close()

输出结果

这产生以下结果-Name of the file: foo.txt

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值