猿问

Python:将数据输出到 Excel 电子表格

对于有经验的编码员来说,我需要做的事情可能非常简单。我的 Python 程序成功执行以下操作:

  1. 导入 Excel 电子表格

  2. 遍历行并计算“模型”的重复出现次数,模型(位置)是否被消耗,以及谁“消耗”了模型(以及他们消耗了多少)。任何不是“已消费”的东西都将被视为“可用”。

  3. 打印“Model”、“Consumed”、“Available”和“Requestor”(使用过模型的人)。

我不仅需要打印值,还需要将它们添加到 Excel 工作簿上的工作表中,并将模型、已使用、可用和请求者作为列标题。

这是我打印值的方式:


if not REQUESTORLIST:

    print(CURRENTMODEL, "Consumed:", CONSUMEDCOUNTER, "Available:", AVAILABLECOUNTER)

else:

    print(CURRENTMODEL,"Consumed:",CONSUMEDCOUNTER, "Available:",AVAILABLECOUNTER,REQUESTORS)

以下是数据类型:


print(type(CURRENTMODEL))

print(type(CONSUMEDCOUNTER))

print(type(AVAILABLECOUNTER))

print(type(REQUESTORS))

输出:


<class 'str'>

<class 'int'>

<class 'int'>

<class 'collections.Counter'>

最后,程序输出被截断:


Model    WS-SFP Consumed: 1 Available: 2 Counter({'Requester    Anthony House': 1})

我是编程的新手(这是我编写的第一个程序)并且无法找到将这些值写入带有我需要的四列标题的 Excel 工作表的方法。我试图将它们转换为字符串并使用 .write 但到目前为止没有成功。你有什么建议吗?


天涯尽头无女友
浏览 445回答 3
3回答

蛊毒传说

欢迎使用堆栈溢出。查看此 DataFrame 方法:.to_excel()。您需要从数据框中调用此方法,提供一个文件路径,该路径将是新 Excel 文件所在的位置。一个例子:my_data_frame.to_excel('path/to/my/new_file.xlsx')。

郎朗坤

您可以提供代码的更多详细信息,以便我们更轻松地为您提供帮助。无论如何,有一些方法可以满足您的需求,但我建议您使用库 pandas。这里有一些带有示例的链接。https://www.datacamp.com/community/tutorials/pandas-tutorial-dataframe-python&nbsp;https://xlsxwriter.readthedocs.io/working_with_pandas.htmlPS:您甚至可以使用熊猫的结构进行计数。

犯罪嫌疑人X

我做了更多的尝试将列表转换回数据框,看起来我现在有一个可行的解决方案。这是我所拥有的:#NEWLIST is the list that changes with each loop iteration.NEWLIST = [(CURRENTMODEL[9:], CONSUMEDCOUNTER, AVAILABLECOUNTER, REQUESTORS)]CURRENTLIST.extend(NEWLIST)df = pd.DataFrame(CURRENTLIST, columns=["Model","Consumed","Available","Requestor(s)"])writer = pd.ExcelWriter('Inventory Summary Report.xlsx')df.to_excel(writer,'Sheet1',freeze_panes=(1,1), index=False)
随时随地看视频慕课网APP

相关分类

Python
我要回答