Python 内置函数之open

本文详细介绍了Python中使用open函数进行文件操作的方法,包括不同模式下的读写操作、二进制文件处理、编码设置及错误处理等。对于每种模式都给出了具体的功能说明,帮助读者更好地理解和掌握Python文件操作的基本技能。

open的作用

一句话:open用来打开文件

open的用法

open(file, mode='r', buffering=-1, encoding=None, errors=None, newline=None, closefd=True, opener=None)

其中:

file:文件的路径名

mode:open的模式

 

字母作用可读内容增加若不存在
'r'只读模式(默认)True报错
'rb'以二进制格式打开一个文件用于只读,文件不可写True报错
'r+'读写,写入内容为stringTrue追加报错
'rb+'以二进制格式打开一个文件用于读写,写入内容为bytesTrue覆盖报错
'w'False覆盖按照文件名新建文件
'wb'以二进制格式打开一个文件用于写,写入内容为bytesFalse覆盖按照文件名新建文件
'w+'写,打开文件时会清空文件内容(read不能读到内容)True覆盖按照文件名新建文件
'wb+'写,以二进制格式打开一个文件用于写,写入内容为bytes(read不能读到内容)True覆盖按照文件名新建文件
'x'创建一个新的文件,若该文件已经存在,则返回错误False新建内容按照文件名新建文件
'a' 写,若文件已有内容,则追加到末尾False追加按照文件名新建文件
'a+'写,打开文件时会清空文件(read不能读到内容)True追加    按照文件名新建文件
'ab'写,以二进制模式进行写入False追加按照文件名新建文件
'ab+'写,以二进制模式进行写入,打开文件时会清空文件(read不能读到内容)True追加按照文件名新建文件
'b' 二进制模式(不单独使用)\\\
't' 文本模式(默认)(不单独使用)\\\
'+' 打开文件用作更新,也就是读和写(不单独使用)\\\
'U' 通用换行模式(已经被弃用)\\\
encoding:编码方式

errors:用来处理encoding和decoding的错误

参数    作用
'strict'如果encoding错误则抛出ValueError(此为默认)
'ignore'忽略所有错误(这种情况可能会导致数据丢失)
'replace'用特定符号替换畸形数据
'surrogateescape'

当数据在从Unicode专用区中时(范围从U + DC80到U + DCFF)会报错,同时会将该数据写入文件中。这对于处理未知编码的文件很有用。

'xmlcharrefreplace'is only supported when writing to a file. Characters not supported by the encoding are replaced with the appropriate XML character reference &#nnn;.
'backslashreplace'replaces malformed data by Python’s backslashed escape sequences.
'namereplace'(also only supported when writing) replaces unsupported characters with \N{...} escape sequences.

newline:用来指定怎么进行换行

参数作用
None待续
''待续
'\n'待续
'\r'待续
'\r\n'待续

### Maya 中 Python 内置函数 `open` 的使用方法 在 Autodesk Maya 中使用的 Python 版本通常遵循标准 Python 库的行为,因此可以按照常规 Python 方式调用 `open()` 函数[^1]。 #### 基础语法 `open()` 函数用于打开文件并返回一个文件对象。此函数接受多个参数,其中最常用的两个是: - 文件路径 (`file`):要访问的文件名称或完整路径字符串。 - 访问模式 (`mode`):指定如何打开文件,默认为只读文本模式 `'r'`。 ```python with open('example.txt', 'r') as file: content = file.read() print(content) ``` 上述代码展示了以只读模式打开名为 `example.txt` 的文件,并将其内容打印出来的方法[^3]。 #### 支持的操作模式 不同的模式允许对文件执行不同类型的读取、写入和其他操作。常见的模式有: | 模式 | 描述 | | --- | ---- | | `'r'` | 只读方式打开文件;这是默认模式 | | `'w'` | 清除现有内容后重新创建新文件进行写入 | | `'a'` | 追加模式,在不删除已有数据的情况下向文件末尾添加新数据 | | `'b'` | 二进制模式(常与其他字符组合使用),如 `'rb'`, `'wb'` | 例如,要在Maya脚本编辑器中保存场景信息至外部TXT文件可如下实现: ```python import maya.cmds as cmds scene_info = "Current scene contains {} objects".format(len(cmds.ls())) with open('/path/to/output_scene_data.txt', 'w') as output_file: output_file.write(scene_info) ``` 这段代码先获取当前场景中的物体数量,然后将这些信息作为字符串存储在一个变量里,最后通过 `open()` 创建一个新的文本文件并将之前准备好的消息写进去[^2]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值