os.chdir相对路径错误

时间:2015-09-25 15:16:59

标签: python python-2.7

import os,pdb
import sys
print os.path.dirname(os.path.realpath(__file__))
pdb.set_trace()
os.chdir('../bci_framework')

输出:

D:\baseline\BCI-Comparison-Framework\bci_framework
WindowsError: (2, 'The system cannot find the file specified', '../bci_framework')

为什么呢?文件夹存在!

1 个答案:

答案 0 :(得分:3)

文件位于bci_framework目录中,这就是为什么打印它的路径会显示该目录,但不是&#39 ;吨。无论你身在何处,它都没有bci_framework作为兄弟姐妹。

打印os.getcwd()以确定您当前的位置。 chdir的任何相对路径都将相对于该位置,而不是文件的位置。

例如,如果您位于以下stackoverflow目录中并运行python ./abhishek/bci_framework/my_file.py,则当前目录为stackoverflow。上一个目录将不包含bci_framework目录。

stackoverflow/
    davidism/
    abhishek/
        bci_framework/
            my_file.py