尝试将日期和时间添加到输出文件名(Python)

尝试将日期和时间添加到输出文件名(Python),python,csv,xls,Python,Csv,Xls,我正在尝试将xls文件转换为csv,并使用名称output加上今天的日期和时间保存它。转换工作正常,但文件名有问题。 所需的输出文件名应为:output day time.csv,例如output 2013-08-05 10:50:55.csv 这是我的尝试name根据需要打印内容,但当我将其放在open()函数上时,它不起作用 name = 'output '+str(datetime.datetime.now().strftime("%Y-%m-%d %H:%M:%S"))+'.csv'

我正在尝试将xls文件转换为csv,并使用名称
output
加上今天的日期和时间保存它。转换工作正常,但文件名有问题。 所需的输出文件名应为:
output day time.csv
,例如
output 2013-08-05 10:50:55.csv

这是我的尝试
name
根据需要打印内容,但当我将其放在
open()
函数上时,它不起作用

 name = 'output '+str(datetime.datetime.now().strftime("%Y-%m-%d %H:%M:%S"))+'.csv'
 archivo_csv = open(str(name), 'wb')
这是整个功能:

import xlrd
import csv

def xls_to_csv:
     print "Saving from xls to csv"
     wb = xlrd.open_workbook('example.xls')
     sh = wb.sheet_by_name('Page1')

     // This two lines are the ones that they are giving me problems
     name = 'output '+str(datetime.datetime.now().strftime("%Y-%m-%d %H:%M:%S"))+'.csv'
     archivo_csv = open(str(name), 'wb')

     wr = csv.writer(archivo_csv, quoting=csv.QUOTE_ALL)
     for rownum in xrange(sh.nrows):
          wr.writerow(sh.row_values(rownum))
     archivo_csv.close()
这是显示的错误:
IOError:[Errno 22]无效模式(“wb”)或文件名:“output 2013-08-05 10:59:44.csv”


提前感谢。

如果您使用的是windows,那么这是命名约定问题,在windows中您无法保留 像
:/\>*?“|
在名称中…”

尽量保持命名约定,如

name = 'output '+str(datetime.datetime.now().strftime("%Y-%m-%d %H-%M-%S"))+'.csv'

如果您使用的是windows,则这是命名约定问题,在windows中,您不能保留 名称中的字符,如
:/\>*?“|

尽量保持命名约定,如

name = 'output '+str(datetime.datetime.now().strftime("%Y-%m-%d %H-%M-%S"))+'.csv'

对<代码>IOError:[Errno 22]无效模式('wb')或文件名:'output 2013-08-05 10:59:44.csv'您的操作系统是?也许您在文件名中所允许的内容上遇到了限制。是的<代码>IOError:[Errno 22]无效模式('wb')或文件名:'output 2013-08-05 10:59:44.csv'您的操作系统是?也许您遇到了文件名中允许的内容的限制。