在工作中,我需要每个月执行一次这个过程,包括从服务器下载一些文件,将它们复制到新文件夹,删除现有文件等,这是非常平凡的。我自己编写了一个Python脚本来执行此操作。
此过程的一个步骤是打开Excel文件并将其另存为CSV文件。无论如何都在做这个Python吗?
编辑:
我遇到的主要困难是双重困难。我知道如何使用Python的csv库编写CSV文件,但是
如何将Excel文件读入Python?
读取Excel文件然后将其写为CSV文件的结果是否与在Excel中打开文件一致,并手动执行保存为CSV?
有没有比这里建议的更好的方法呢?
我想我真的想要一个答案1. 2我可以通过使用像Winmerge这样的东西找到自己......
答案 0 :(得分:1)
要在Python中操作Excel文件,请查看this question and answer,其中使用了xlrd package。例如:
from xlrd import open_workbook
book = open_workbook('example.xlsx')
sheet = book.sheet_by_index(1)
要在Python中操作CSV文件,请查看this question and answer和documentation,其中使用了库csv
。例如:
import csv
with open('example.csv', 'rb') as csvfile:
spamreader = csv.reader(csvfile, delimiter=' ', quotechar='|')
for row in spamreader:
print ', '.join(row)
答案 1 :(得分:-3)
我必须在我参加的课程中为这个项目做这个。
您不需要在此过程中使用Excel,因为您只需创建一个csv文件,然后在您喜欢的任何程序中打开它。
如果你知道如何将文件写为txt,那么你可以创建一个csv。我不确定这是否是最有效的方式,但它有效。
设置文件时,而不是像:
data = [["Name", "Age", "Gender"],["Joe",13,"M"],["Jill",14,"F"]]
filename = input("What do you want to save the file as ")
filename = filename + ".txt"
file = open(filename,"w")
for i in range(len(data)):
line = ""
for x in range (len(data[i])):
line += str(data[i][x])
line += ","
file.write(line)
file.write("\n")
file.close()
简单地将文件扩展名从txt替换为csv,如下所示:
filename = filename + ".csv"