[英]Why does pyPdf2.PdfFileReader() require a file object as an input?
csv.reader()
不需要文件 object, open()
也不需要。 pyPdf2.PdfFileReader()
是否需要文件 object 因为 PDF 格式的复杂性,还是有其他原因?
这只是库的编写方式的问题。 csv.reader
允许任何返回字符串(包括文件)的迭代器。 open
正在打开文件,因此它当然不会使用打开的文件(尽管它可以使用指向打开文件描述符的 integer)。 通常,最好单独处理文件,通常在with
块中,以便正确关闭文件。
with open('input.pdf', 'rb') as f:
# do something with the file
pypdf
也可以采用 BytesIO stream 或文件路径。 我实际上建议在大多数情况下传递文件路径,因为 pypdf 然后会为您关闭文件。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.