71056

[code]

    from pathlib import Path
    Path(__file__).parents[2] = '\\hoge0\hoge1'
    Path(__file__).parents[1] = '\\hoge0\hoge1\hoge2'
    Path(__file__).parents[0] = '\\hoge0\hoge1\hoge2\hoge3'
    
[/code]

'hoge2'を取得したいのですが、  
`str(Path(__file__).parents[1]).replace(str(Path(__file__).parents[2]),'')`  
は書き方的にスマートでないと思います。  
他にも、正規表現で取得するというのもくどい気がします。  
実はpathlibの中の関数で簡単に取得できる、ということはないでしょうか。  
osモジュールの利用でも構いません。

**実行環境**

  * Windows 10
  * Python 3.7


CC BY-SA 4.0
2020-10-09T17:54:35.297
71055
2020-10-09T18:10:56.583
12457
question
python
Pythonで1つ上の階層のディレクトリ名のみ取得したい


`os.path`モジュールを使う方法です。

[code]

    from os.path import abspath, join, split
    
    split(abspath(join(__file__, '../..')))[-1]
    
[/code]


CC BY-SA 4.0
2020-10-09T18:10:56.583
71056
2020-10-09T18:10:56.583
36398
71055
answer