2024-04-19 08:18:26 发布
网友
我想在一个python文件中详细列出我工作的所有文件。因此,我想制作一个对象,其中包括客户名称、工作编号、位置,最后是实际文书工作的pdf文件。如何将pdf文件作为属性附加到python对象
您可以将PDF文件的数据读取为原始字节,并将其存储在类属性中。然后,如果要将存储的字节再次保存为PDF文件,可以将字节写入文件。请记住,您这样读入的所有PDF都将存储在内存(RAM)中。如果要备份文件,最好将其复制或移动到文件夹中,并将该路径保留为属性。您可以使用shutil模块移动或复制文件
如果你想让你的程序持续运行并始终保持这些对象的活力,那么如果你想以这种方式存储10 GBs的PDF,你的内存就会很快出现问题
“我想在python文件中详细列出我工作的所有文件。” 这句话让我相信你误解了它的工作原理。如果将PDF文件的内容指定给对象的属性,这将仅在脚本运行时进行。脚本一结束,对象就消失了。您不能“将其保存在Python文件中”。(虽然您可以将PDF编码为base64,如果您真的需要,可以在python文件中硬编码该字符串,但这可能不是您的目标)
也就是说,这里有一个可行的方法:
class YourClass: def __init__(self, name, job_num, location, pdf_path): self.name = name self.job_num = job_num self.location = location self.pdf_data = self.get_pdf_data(pdf_path) def get_pdf_data(self, pdf_path): with open(pdf_path, 'rb') as file: data = file.read() return data def save_pdf(self, pdf_path): with open(pdf_path, 'wb') as file: file.write(self.pdf_data)
您可以将PDF文件的数据读取为原始字节,并将其存储在类属性中。然后,如果要将存储的字节再次保存为PDF文件,可以将字节写入文件。请记住,您这样读入的所有PDF都将存储在内存(RAM)中。如果要备份文件,最好将其复制或移动到文件夹中,并将该路径保留为属性。您可以使用shutil模块移动或复制文件
如果你想让你的程序持续运行并始终保持这些对象的活力,那么如果你想以这种方式存储10 GBs的PDF,你的内存就会很快出现问题
“我想在python文件中详细列出我工作的所有文件。” 这句话让我相信你误解了它的工作原理。如果将PDF文件的内容指定给对象的属性,这将仅在脚本运行时进行。脚本一结束,对象就消失了。您不能“将其保存在Python文件中”。(虽然您可以将PDF编码为base64,如果您真的需要,可以在python文件中硬编码该字符串,但这可能不是您的目标)
也就是说,这里有一个可行的方法:
相关问题 更多 >
编程相关推荐