gpt4 book ai didi

Python: "import as"关键字错误

转载 作者:太空宇宙 更新时间:2023-11-03 15:16:50 26 4
gpt4 key购买 nike

我一直在使用 Python,并且正在导入 PyPDF2 模块。我实际上已经想出了如何解决我的问题,但我想知道为什么我以前的代码不起作用。

这是旧代码:

from PyPDF2 import PdfFileMerger as merger, PdfFileReader 

def MakeOne(filesList):


for file in filesList:
merger().append((file))
merger().write("AllInOne.pdf")

print("File AllInOne.pdf has been created")

这是当前可以运行的代码。

from PyPDF2 import PdfFileMerger, PdfFileReader
def MakeOne(filesList):

merger = PdfFileMerger()
for file in filesList:
merger.append((file))

merger.write("AllInOne.pdf")

print("File AllInOne.pdf has been created")

第一段代码并没有使控制台崩溃——事实上它确实创建了一个文件。唯一的问题是它创建的文件无法打开并且只有 1 KB 大。第二段代码与StackOverflow中有多少人使用过这个模块类似,并且运行得非常完美。我的问题是:既然我在将 PdfFileMerger 导入为合并后似乎正确地使用了“合并”,为什么第一段代码没有为我提供预期的结果?

感谢您提供的任何帮助!

最佳答案

正如之前的评论所指出的,每次您调用 merger() ,您正在创建一个新的 PdfFileMerger目的。所以,当您调用merger().write("AllInOne.pdf")时,您正在编写一个没有附加文件的 PDF。

当您使用import <module> as时,您正在为导入的模块“别名”。因此,您的第一个代码块与以下内容完全相同:

from PyPDF2 import PdfFileMerger, PdfFileReader 

def MakeOne(filesList):


for file in filesList:
PdfFileMerger().append((file))
PdfFileMerger().write("AllInOne.pdf")

print("File AllInOne.pdf has been created")

关于Python: "import as"关键字错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43815237/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com