Python-如何将用户input写入Excel文件?

我是Python的新手,所以我希望这听起来不错。 我如何使用Python从用户input写入Excel文件? 我想让我的脚本询问用户“姓名”,“职位”,“build筑编号:”,“date:”等,并从该原始input,在Excel电子表格中相应填写相应的列。 我不希望将来使用该脚本覆盖表单中的以前的数据。 我希望每次都在电子表格中创build一个新行,然后在每行中填写正确的条目。 我希望这是有道理的。 提前感谢您的帮助。

您可以使用openpyxl写入工作簿。 这里有一些基本用法,应该有助于避免覆盖:

import openpyxl wb = openpyxl.load_workbook('C:/test.xlsx') ws = wb.active i = 0 cell_val = '' # Finds which row is blank first while cell_val != '': cell_val = ws['A' + i].value i += 1 # Modify Sheet, Starting With Row i wb.save('C:/test.xlsx') 

希望这可以帮助。

编辑,获取input和时间:

为了从用户获取信息,请使用

 x = input('Prompt: ') 

但是,如果你想要的实际电stream,我build议使用时间模块:

 >>> from time import strftime >>> date = strftime('%m-%d-%y') >>> time = strftime('%I:%M%p') >>> print(date) 08-28-15 >>> print(time) 01:57AM 

我还要补充一点,XlsxWriter也是写入Excel的优秀库,但是,与OpenPyXl不同,它只是一个编写器,不会读取Excel文件。

从他们的文档中find一个例子如下:

 import xlsxwriter # Create a workbook and add a worksheet. workbook = xlsxwriter.Workbook('Expenses01.xlsx') worksheet = workbook.add_worksheet() # Some data we want to write to the worksheet. expenses = ( ['Rent', 1000], ['Gas', 100], ['Food', 300], ['Gym', 50], ) # Start from the first cell. Rows and columns are zero indexed. row = 0 col = 0 # Iterate over the data and write it out row by row. for item, cost in (expenses): worksheet.write(row, col, item) worksheet.write(row, col + 1, cost) row += 1 # Write a total using a formula. worksheet.write(row, 0, 'Total') worksheet.write(row, 1, '=SUM(B1:B4)') workbook.close() 

你可能想使用pandas模块。 它使读取,写入和操作Excel文件非常简单:

http://pandas.pydata.org/

Pandas是一个开源的,BSD许可的库,为Python编程语言提供了高性能,易于使用的数据结构和数据分析工具。