I have some data that I'd like to save in an excel file. How does one do this in python?
There's a great python module called XLWT. I'd recommend using that... it writes native Excel files instead of CSVs. Supports formulas, etc too.
Documentation (borrowed from Mark)
I'll answer a slightly different question: "How can I write data so that Excel can read it?"
Use the csv
module to write your data as a .csv file, and then open it in Excel.
import csv
csvout = csv.writer(open("mydata.csv", "wb"))
csvout.writerow(("Country", "Year"))
for coutry, year in my_data_iterable():
csvout.writerow((country, year))
if it's running on windows, try creating an instance of EXCEL.APPLICATION
via COM
Use Excel Help for the object reference.
This way you can even format the data, write formulas, etc.
You may want to look at this book: "Python Programming On Win32" from O'Reilly. Is old but useful. It use the "Python for Windows Extensions" (http://starship.python.net/~skippy/win32) for manage COM gracefully. There is a couple of examples using Excel in this extensions.