Python 打开目录时创建异常
打开目录时遇到问题。我在所有目录上循环,然后走进:Python 打开目录时创建异常,python,exception-handling,Python,Exception Handling,打开目录时遇到问题。我在所有目录上循环,然后走进: for i in var1: for j in var2: if i == j: continue sdir = i+'_'+j os.chdir("/home/Documents/test"+sdir) 只要有一个符合名称sdir的目录,一切正常。当它不存在时,将抛出以下错误: OSError:[Errn
for i in var1:
for j in var2:
if i == j: continue
sdir = i+'_'+j
os.chdir("/home/Documents/test"+sdir)
只要有一个符合名称sdir
的目录,一切正常。当它不存在时,将抛出以下错误:
OSError:[Errno 2]没有这样的文件或目录:/home/Documents/test/a\u b
但是我有一个名为b_a
的目录。因此,我想在我的代码中交换I
和j
。我的意思是如果没有a_b
目录->交换a
和b
->进入b_a
目录
如何使用
os.chdir(“/home/Documents/test/”+sdir)
?首先,我建议使用创建文件夹结构:
import os
base = os.path.join('/home', 'Documents', 'test')
然后就是它:
把它放在试块里。并在除块外的其他位置进行交换。在EXPECT block中使用另一个try EXPECT block来处理失败的情况。@monica请使用PEP8格式化代码
import os
base = os.path.join('/home', 'Documents', 'test')
try:
os.chdir(os.path.join(base, i+'_'+j))
except OSError:
try:
os.chdir(os.path.join(base, j+'_'+i))
except OSError:
print('total fail', i, j)