欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Python进阶 open函数

程序员文章站 2024-03-17 16:26:46
...



open 函数可以打开一个文件。超级简单吧?大多数时候,我们看到它这样被使用:

f = open('photo.jpg', 'r+')
jpgdata = f.read()
f.close()

有三个错误存在于上面的代码中。你能把它们全指出来吗?



正确的用法:

with open('photo.jpg', 'r+') as f:
    jpgdata = f.read()

open的第一个参数是文件名。第二个(mode 打开模式)决定了这个文件如何被打开。

  • 读取文件,传入r
  • 读取并写入文件,传入r+
  • 覆盖写入文件,传入w
  • 在文件末尾附加内容,传入a

以二进制模式来打开,在mode字符串后加一个b



例子:读取一个文件,检测它是否是JPG

import io

with open('photo.jpg', 'rb') as inf:
    jpgdata = inf.read()

if jpgdata.startswith(b'\xff\xd8'):
    text = u'This is a JPEG file (%d bytes long)\n'
else:
    text = u'This is a random file (%d bytes long)\n'

with io.open('summary.txt', 'w', encoding='utf-8') as outf:
    outf.write(text % len(jpgdata))