[英]python append two zipped lists into docx file
john = [...]
jake = [...]
for a,b in zip(john, jake):
document = Document()
document.add_paragraph(f"{a}---------------{b} \n")
document.save("docxpy.docx")
我有兩個列表,想要 append 它們的值作為“a----------------b”到“docxpy.docx”文件中。 但是每次它只附加其中一個。 我是新來的 python 請字體取笑我
嘗試這個:
john = [...]
jake = [...]
document = Document() # this needs to be before the for loop
for a,b in zip(john, jake):
document.add_paragraph(f"{a}---------------{b} \n")
document.save("docxpy.docx") # this should come after the for loop
問題是您在循環內初始化了document
,這意味着每次迭代都會使用空Document()
object 重新初始化document
。結果,在循環的最后一次迭代中,您最終得到的文檔只包含最后一對a,b
,這就是為什么您在 output 文檔中只看到一行的原因。 在 for 循環之前初始化document
變量應該可以解決問題。
此外,您應該將save
方法調用放在循環之后。 這不是絕對必要的(您會注意到無論哪種方式都會得到相同的結果),但它可以節省時間/資源,因為一旦添加了所有段落,您只需要在最后將文件寫入磁盤一次。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.