Pythonda bir dosyanın dizin yolunu almak istiyoruz. Bunu nasıl yapabiliriz? Örneğin aşağıdaki gibi bir dosyamız olsun:
'C:\\python27\\test.py'
Dizinin yolunu nasıl alabiliriz?
İstediğimiz sonuç aşağıdaki gibi:
'C:\\python27\\'
özel değişken __file__
geçerli dosyanın yolunu içerir. Buradan, Pathlib veya os.path modüllerini kullanarak dizini alabiliriz.
Python 3
Çalıştırılmak üzere olan komut dosyasının dizini için:
import pathlib
pathlib.Path(__file__).parent.resolve()
Geçerli çalışma dizini için:
import pathlib
pathlib.Path().resolve()
Python 2 ve 3
Çalıştırılmak üzere olan komut dosyasının dizini için:
import os
os.path.dirname(os.path.abspath(__file__))
Geçerli çalışma dizinini kastediyorsanız:
import os
os.path.abspath(os.getcwd())
file değişkeninin öncesinde ve sonrasında iki alt çizgi olduğunu unutmayın: __file__
Ayrıca, etkileşimli olarak çalışıyorsanız veya bir dosyadan (örneğin: bir veritabanı veya çevrimiçi kaynak) gibi bir yerden kod yüklediyseniz, “geçerli dosya” kavramı olmadığından bunlar çalışmayacaktır. Yukarıdaki yanıt, bir dosyadaki python komut dosyasını çalıştırmanın en yaygın senaryosunu varsayar.