2012-04-09 175 views
0

有沒有一種更簡單的方法來獲取一個父目錄的字符串比做以下?os.getpardir()的等價物?

'/'.join(os.getcwd().split('/')[:-1]) 
+2

[獲取父母的可能重複目錄在Python中](http://stackoverflow.com/questions/2860153/get-parent-directory-in-python) – 2012-04-09 19:46:19

+2

Plea我不認爲'os.set =='/''就是這樣。在'os.path'中有現成的函數:'split','join','basename'等。 – delnan 2012-04-09 19:50:45

回答

3

我相信這將是非常簡單的,你

os.path.abspath(os.path.pardir) 

或者也可以簡單

os.path.dirname(os.getcwd()) 
1

我不知道,做它的方法,但我會做這樣的事情:

os.path.abspath(os.path.join(os.getcwd(), os.pardir)) 

編輯:這樣的作品,但Ixanezis方式可能會更好。

+0

os.getcwd()已經是絕對路徑,所以os.path.abspath是多餘的,os .path.join(x,os.pardir)與os.path.dirname(x) – Zart 2012-04-09 19:53:33

+0

'os.path.join(os.getcwd(),os.pardir)'基本上只是追加'/ .. '到路徑上,調用'os.path.abspath'就可以將其轉換回去。 'dirname'可能是一個更好的方法,我編輯了我的答案以反映這一點。 – Sionide21 2012-04-09 20:04:15

1

那麼,這種方法可能是有用的:

os.path.dirname(os.getcwd())