Python 中的文件对象提供了许多方法,用于执行文件的读写和其他操作。下面是一些常用的文件对象方法:
- open()
* 这不是文件对象的方法,而是用于打开文件的内置函数。它返回一个文件对象。
```python
file_obj = open('filename.txt', 'r') # 读取文件
file_obj = open('filename.txt', 'w') # 写入文件(覆盖)
file_obj = open('filename.txt', 'a') # 追加到文件
```
AI 代码解读
- read()
* 读取文件内容。
* 可以指定读取的字节数。
```python
content = file_obj.read() # 读取整个文件
content = file_obj.read(10) # 读取前10个字节
```
AI 代码解读
- readline()
* 读取文件中的一行。 ```python line = file_obj.readline() # 读取一行 ```
AI 代码解读
- readlines()
* 读取文件的所有行,返回一个列表,列表中的每个元素都是文件的一行。 ```python lines = file_obj.readlines() # 读取所有行 ```
AI 代码解读
- write()
* 将字符串写入文件。 ```python file_obj.write('Hello, World!') # 写入字符串 ```
AI 代码解读
- writelines()
* 写入一个字符串列表到文件,不添加换行符,除非字符串本身包含。
```python
lines = ['Hello,\n', 'World!']
file_obj.writelines(lines) # 写入多行
```
AI 代码解读
- seek(offset, whence=0)
* 移动文件读取/写入的指针位置。
* `offset` 是相对于某个位置的偏移量。
* `whence` 参数可以是 0(文件开头),1(当前位置),或 2(文件末尾)。
```python
file_obj.seek(10) # 从文件开头移动10个字节
```
AI 代码解读
- tell()
* 返回当前文件读取/写入的指针位置。 ```python position = file_obj.tell() # 获取当前位置 ```
AI 代码解读
- close()
* 关闭文件。 * 这是一个很重要的方法,因为它会释放文件所占用的系统资源。 ```python file_obj.close() # 关闭文件 ```
AI 代码解读
- flush()
* 刷新文件内部缓冲区,将缓冲的数据立即写入文件。 * 主要用于写入文件后确保数据被写入磁盘。 ```python file_obj.flush() # 刷新缓冲区 ```
AI 代码解读
- with 语句
* 这是一个上下文管理器,用于自动关闭文件。
* 使用 `with` 语句可以确保文件在使用完毕后被正确关闭。
```python
with open('filename.txt', 'r') as file_obj:
content = file_obj.read()
# 文件在这里会自动关闭
```
AI 代码解读
除了上述方法外,文件对象还有一些其他不常用的方法,如 isatty()
, fileno()
, truncate()
, readable()
, writable()
, seekable()
等。这些方法在特定场景下可能有用,但通常不需要在常规的文件操作中使用。