使用python将.txt文件中的内容存储到.xlsx时出错

使用python将.txt文件中的内容存储到.xlsx时出错,python,python-3.x,python-2.7,excel-2010,openpyxl,Python,Python 3.x,Python 2.7,Excel 2010,Openpyxl,我是一个新的程序员,目前正在尝试为更大的东西创建一个示例代码。我在谷歌上搜索了我的大部分问题,但我找不到“最终”问题的任何答案,所以我决定发布它 此代码基本上是打开Excel文件、获取特定列的数据、编辑数据并将其保存到名为“Saved.txt”的文本文件中的代码。代码在这里一直有效。我的问题是,当我试图将所有数据逐行上传到另一个Excel文件中时。请帮帮我 import openpyxl from openpyxl import Workbook Code = "0507" Save = op

我是一个新的程序员,目前正在尝试为更大的东西创建一个示例代码。我在谷歌上搜索了我的大部分问题,但我找不到“最终”问题的任何答案,所以我决定发布它

此代码基本上是打开Excel文件、获取特定列的数据、编辑数据并将其保存到名为“Saved.txt”的文本文件中的代码。代码在这里一直有效。我的问题是,当我试图将所有数据逐行上传到另一个Excel文件中时。请帮帮我

import openpyxl
from openpyxl import Workbook

Code = "0507"
Save = open("Saved.txt","a")     

#Reading from XLSX and writing into a TEXT FILE after appending the data.
fname = 'Wekanda 2.xlsx'
wb = openpyxl.load_workbook(fname)
sheet = wb.get_sheet_by_name('Wekanda 2')
for rowOfCellObjects in sheet['R2':'R282']:
    for cellObj in rowOfCellObjects:
    line_w = cellObj.value
    line_w = str(line_w)
    line_w = line_w.replace(" ","@")
    Save.write("\n"+Code+line_w)
    test = str(line_w)
Save.close()
在这里之前,这个代码工作得很好

输出 -EXCEL文件|文本文件|输出文件
  • 50 B2-3/3|050750@B2-3/3 | 050715

  • 50 B2-3/4|050750@B2-3/4 | 050715

  • 50 B2-3/5|050750@B2-3/5 | 050715

我希望文本文件中的内容正好位于输出文件中

文本文件中的内容

  • 050730
  • 050740
  • 050740A
  • 050740B
  • 050740-1/1
  • 050740-1/2
  • 050740-2/1
  • 050740-2/2
  • 050740-3/1
  • 050740-3/2
  • 050740-4/1
  • 050740-4/2

我想你现在已经发现了这个问题,但我想我还是会在这里给出答案(这样我们就可以开始清空论坛中未回答的问题了)

您正在创建许多单元格,这些单元格随后被指定相同的值,即直线。我假设您在输出中看到的值是完整值列表的一部分?作为旁注,我可以补充一点,您使用的是硬编码值,范围应尽可能避免

作为一个初学者,我冒险提出一个可能更好的解决方案

with open("Saved.txt","r") as f:
for i, line in enumerate(f):
    Pointer = "A{}".format(i+1)
    sheet[Pointer] = line
有关枚举函数的更多详细信息,请查看官方文档。基本上,它为从零开始的每个元素提供一个索引值。
编辑:不小心将str()保留在i.附近。

我们可以获得
Saved.txt
的内容样本吗?这对我们帮助你会有很大帮助。谢谢是的,我已经在上面提供了@西恩弗兰基斯,巴拉斯
with open("Saved.txt","r") as f:
for i, line in enumerate(f):
    Pointer = "A{}".format(i+1)
    sheet[Pointer] = line