我正在尝试创建一个文件,其名称包含创建时的当前日期和时间。
但是当将字符串传递给open()函数时,它给了我无效的参数错误。
这是我尝试过的代码:
import os, time
from datetime import datetime
# fname='Portals Statuses at '+datetime.now().strftime('%Y-%b-%d %H:%M:%S')+'.txt'
# fname="Portals Statuses at "+time.strftime('%Y-%b-%d %H:%M:%S')+".txt"
fl=open(fname,'w+')
无论从上面的代码向fname传递什么值,它仍然会在错误以下抛出
Traceback (most recent call last):
File "C:/Users/preddy53/PycharmProjects/Practice/Status checks.py", line 7, in <module>
fl=open(fname,'w+')
OSError: [Errno 22] Invalid argument: 'Portals Statuses at 2018-Aug-21 18:45:01.txt'
答案 0 :(得分:3)
只需更改.strftime()
调用即可将:
(不能在文件名中使用)替换为.
或其他内容。
fname='Portals Statuses at '+datetime.now().strftime('%Y-%b-%d %H.%M.%S')+'.txt'
答案 1 :(得分:1)
知道了。我在文件名':'
中带有冒号