Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ssl/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python open(x,';w';)不创建新的文本文件_Python - Fatal编程技术网

Python open(x,';w';)不创建新的文本文件

Python open(x,';w';)不创建新的文本文件,python,Python,无论我尝试使用何种打开模式,它都会抛出以下错误: keylog = open(keydump, mode = 'w') FileNotFoundError: [Errno 2] No such file or directory: 'keylog 2014/02/08-08/54/18.txt' 在哪里 now = datetime.datetime.now().strftime('%Y/%m/%d-%H/%M/%S') keydump = ''.join(['keylog ', st

无论我尝试使用何种打开模式,它都会抛出以下错误:

    keylog = open(keydump, mode = 'w')
FileNotFoundError: [Errno 2] No such file or directory: 'keylog 2014/02/08-08/54/18.txt'
在哪里

now = datetime.datetime.now().strftime('%Y/%m/%d-%H/%M/%S')
keydump = ''.join(['keylog ', str(now), '.txt'])

当系统将
/
用作路径分隔符时,您正在将其放入文件名中。如果
/
是路径分隔符,它将尝试在可能不存在的路径中创建文件,从而导致错误

换句话说,

 keylog 2014/02/08-08/54/18.txt

keylog 2014/02/08-08/54
目录中的文件
18.txt

我建议在时间表示中将
'/'
替换为
'

keydump = ''.join(['keylog_', str(now).replace('/', '_'), '.txt'])

你真的想创建这个目录树吗?
keylog2014/02/08-08/54/
它的文件名是“/”,我有时会很笨。谢谢其他字符也可能导致问题,如冒号,这取决于您的操作系统。即使您的系统使用反斜杠作为路径分隔符,Python仍会将正斜杠解释为路径分隔符。任何系统上的文件名中都不允许使用斜杠。