这应该是一个非常简单的问题,我无法通过Google搜索找到答案:如何关闭pyPDF"PdfFileReader"类打开的文件句柄
这是片段:
import os.path
from pyPdf import PdfFileReader
fname = 'my.pdf'
input = PdfFileReader(file(fname, "rb"))
os.rename(fname, 'my_renamed.pdf')
Run Code Online (Sandbox Code Playgroud)
这会引起错误[32]
谢谢
操作系统阻止文件在其他东西打开时重新命名.这是一件好事(tm).
Python的with语句将在您完成读取/操作后自动关闭该文件.
with open(fname, "rb") as f:
input = PdfFileReader(f, "rb"))
os.rename(fname, 'my_renamed.pdf')
Run Code Online (Sandbox Code Playgroud)
如果您仍在使用Python 2.5,则必须进行特殊导入:
from __future__ import with_statement
Run Code Online (Sandbox Code Playgroud)
Python 2.6及更高版本默认启用.
| 归档时间: |
|
| 查看次数: |
9227 次 |
| 最近记录: |