如何在Python代码中建立操作顺序?

2024-04-25 19:31:31 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个脚本,它从电子邮件中获取信息,下载图像和必要的文本,然后用这些信息创建一个HTML文件。我还想实现压缩文件以简化分发的功能。我遇到的问题是,zip函数在生成所有html文件之前运行,因此将它们从存档中排除。有人对如何确保在创建zip存档之前创建所有HTML文件有什么建议吗?谢谢您!你知道吗

示例代码:

for csvFile in csvFiles:
    for file in os.listdir('.'):
        #do stuff
    csv_file = csv.DictReader(open(csvFile))
    for line in csv_file:
        htmlFile = csvFile[:-4]+'-'+line['sequence']+'.html'
        htmlCode = '<html goes here>'
        htmlData = open(os.path.join('C:/foo/bar', htmlFile), 'w+')
        htmlData.write(htmlCode)
        print htmlFile+' Complete'
        htmlData.close()
for file in allFiles:
    archive = zipfile.ZipFile(csvFile[:-4]+'.zip', mode='a')
    archive.write(file)
    archive.close()

Tags: 文件csvcsvfileinforoshtmlline
1条回答
网友
1楼 · 发布于 2024-04-25 19:31:31

Python代码按顺序运行,因此zip函数应该只在生成所有HTML文件之后运行。您遇到的问题可能出现在for file in allFiles:中,查找文件列表并将其放入allFiles变量的代码在哪里?如果该代码在生成HTML之前运行,那么在创建zip文件时,allFiles将有一个过期的索引,其中包含所有要捕获的文件。你知道吗

相关问题 更多 >