我有一个简单的Python代码:
import os
print [f for f in os.listdir('C:\Users\g514549\Desktop\MyFolder') if os.path.isfile(f)]
现在,如果我打开目录,我会得到以下所有文件:
但是当我运行python脚本时,得到一个空字符串,表示所有文件都返回False
:
但当我像这样更改目录时:
import os
print [f for f in os.listdir('C:\Users\g514549\Desktop\C++') if os.path.isfile(f)]
它正确地显示了所有文件。 第二个文件夹内容如下。你知道吗
发生了什么? 我试过删除第一个目录中的所有文件,并用不同的文本编辑器和不同的编码创建一些虚拟文件,但没有任何效果。你知道吗
注意对于第一个文件夹中的任何exe文件,我只能得到True
注2这不可能重复报告的问题。这个不同
原因是
'C:\Users\g514549\Desktop\C++'
是您当前的路径。你知道吗在
/tmp
中没有:但当我创建完整路径时:
更改为
/tmp
:使其在没有完整路径的情况下工作:
要保存,请始终创建完整路径。您永远不知道当前工作目录是否因超出您控制范围的原因而发生更改。你知道吗
注意:在Windows上,复制粘贴路径时始终使用原始字符串:
避免
\n
、\t
或其他格式化字符造成的影响。你知道吗可以使用
os.walk
显示所有文件。你知道吗相关问题 更多 >
编程相关推荐