f.write(img)
时间: 2023-12-12 14:04:55 浏览: 36
`f.write(img)` 是将二进制数据 `img` 写入文件对象 `f` 所代表的文件中。在 Python 中,写入文件时,需要使用二进制模式打开文件,即在打开文件时,第二个参数要传入 `'wb'` (写入二进制)。
例如,下面的代码将一个名为 `image.png` 的图片文件读入内存,然后将该图片文件的二进制内容写入名为 `image_copy.png` 的新文件中:
```python
with open('image.png', 'rb') as f1, open('image_copy.png', 'wb') as f2:
img = f1.read()
f2.write(img)
```
其中,`with` 语句同时打开了两个文件对象 `f1` 和 `f2`,并分别用于读取原始图片文件和写入新的图片文件。在 `with` 块中,我们先使用 `f1.read()` 读取原始图片文件的二进制数据,然后将这些数据使用 `f2.write()` 写入新的图片文件中。
需要注意的是,如果写入的数据不是二进制数据,而是字符串数据,则需要使用 `f.write()` 方法,而不是 `f.write(img)`。此时,需要在打开文件时,第二个参数传入 `'w'`(写入字符串)。例如:
```python
with open('test.txt', 'w') as f:
f.write('Hello, world!')
```
这段代码将字符串 `'Hello, world!'` 写入名为 `test.txt` 的文件中。在写入字符串数据时,不需要使用二进制模式打开文件。