Python 在csv中保存数据帧期间,将时间戳添加到文件名
当我将文件保存到.csv时,我想在文件旁边添加创建该文件时的时间戳。我试过这个,但没用:Python 在csv中保存数据帧期间,将时间戳添加到文件名,python,pandas,dataframe,python-requests,export-to-csv,Python,Pandas,Dataframe,Python Requests,Export To Csv,当我将文件保存到.csv时,我想在文件旁边添加创建该文件时的时间戳。我试过这个,但没用: df.to_csv('File_name_{}.csv'.format(pd.datetime.now().strftime("%Y-%m-%d %H:%M:%S"))) 它给了我这个输出: OSError: [Errno 22] Invalid argument: 'File_name_2021-05-12 16:20:23.csv' 如何更正此问题?Windows上的文件名中不
df.to_csv('File_name_{}.csv'.format(pd.datetime.now().strftime("%Y-%m-%d %H:%M:%S")))
它给了我这个输出:
OSError: [Errno 22] Invalid argument: 'File_name_2021-05-12 16:20:23.csv'
如何更正此问题?Windows上的文件名中不允许使用冒号,因此您可以使用无冒号的行,它应该可以正常工作:
df.to_csv('File_name_{}.csv'。格式(pd.datetime.now().strftime(“%Y-%m-%d%H%m%S”))
根据Microsoft:
使用当前代码页中的任何字符作为名称,包括
Unicode字符和扩展字符集中的字符
(128–255),但以下情况除外:
df.to_csv('File_name_{}.csv'.format(pd.datetime.now().strftime("%Y-%m-%d %Hh%Mm%Ss")))
- 以下保留字符:
- <(少于)
- >(大于)
- :(冒号)
- “(双引号)
- /(正斜杠)
- \(反斜杠)
- |(垂直杆或管道)
- ?(问号)
- *(星号)
- 整数值零,有时称为ASCII NUL字符
- 整数表示形式介于1到31之间的字符,但替换数据流中包含这些字符的情况除外 允许。有关文件流的详细信息,请参阅文件 溪流
- 目标文件系统不允许的任何其他字符
Windows上的文件名中不允许使用冒号,因此您可以使用无冒号的行,它应该可以正常工作:
df.to_csv('File_name_{}.csv'。格式(pd.datetime.now().strftime(“%Y-%m-%d%H%m%S”))
根据Microsoft:
使用当前代码页中的任何字符作为名称,包括
Unicode字符和扩展字符集中的字符
(128–255),但以下情况除外:
df.to_csv('File_name_{}.csv'.format(pd.datetime.now().strftime("%Y-%m-%d %Hh%Mm%Ss")))
- 以下保留字符:
- <(少于)
- >(大于)
- :(冒号)
- “(双引号)
- /(正斜杠)
- \(反斜杠)
- |(垂直杆或管道)
- ??(问号)
- *(星号)
- 整数值零,有时称为ASCII NUL字符
- 整数表示形式介于1到31之间的字符,但替换数据流中包含这些字符的情况除外 是允许的。有关文件流的更多信息,请参见文件流 溪流
- 目标文件系统不允许的任何其他字符
解决此问题的简单方法是执行以下操作:
df.to_csv('File_name_{}.csv'.format(pd.datetime.now().strftime("%Y-%m-%d %Hh%Mm%Ss")))
解决此问题的简单方法是执行以下操作:
df.to_csv('File_name_{}.csv'.format(pd.datetime.now().strftime("%Y-%m-%d %Hh%Mm%Ss")))
这可能与您的操作系统不允许使用“:”字符有关(windows不允许使用该字符),请尝试使用不同的方式显示它(例如使用-或uu)Thansk。很多情况下,它工作正常,只是删除了“:”。这可能与您的操作系统不允许使用“:”字符有关(windows不允许使用该字符)试着想一种不同的方式来显示它(如使用-或u)Thansk很多,它很有效,只是删除了“:”。