我有以下代码检查目录是否存在
def download(id, name, bar):
cwd = os.getcwd()
dir = os.path.join(cwd,bar)
partial = os.path.join(cwd, id + ".partial")
print os.path.isdir(dir)
if(os.path.isdir(dir)):
print "dir exists"
dir_match_file(dir, bar)
else:
print dir
对于实际存在的目录,它返回“False”。这是输出:
False
/scratch/rists/djiao/Pancancer/RNA-seq/CESC/TCGA-BI-A0VS-01A-11R-A10U-07
当我进入python交互式会话并输入os.path.isdir(“/ scratch / rists / djiao / Pancancer / RNA-seq / CESC / TCGA-BI-A0VS-01A-11R-A10U-07”) ,它返回“true”。
为什么文件夹存在时会说错?
答案 0 :(得分:9)
dir
中的download
在结尾处有空白,而在交互式会话中定义的dir
没有。通过打印repr(dir)
发现了差异。
In [3]: os.path.isdir('/tmp')
Out[3]: True
In [4]: os.path.isdir('/tmp\n')
Out[4]: False