Jak mogę utworzyć plik w pythonie o jeden katalog, bez używania pełnej ścieżki?Jak utworzyć plik o jeden katalog?
Chciałbym sposób, który pracował zarówno dla systemu Windows i Linux.
Dzięki.
Jak mogę utworzyć plik w pythonie o jeden katalog, bez używania pełnej ścieżki?Jak utworzyć plik o jeden katalog?
Chciałbym sposób, który pracował zarówno dla systemu Windows i Linux.
Dzięki.
Zastosowanie os.pardir
(co jest prawdopodobnie zawsze ".."
)
import os
fobj = open(os.path.join(os.pardir, "filename"), "w")
Zależy, czy pracujesz w środowisku Unix lub Windows.
na oknach:
..\foo.txt
na Unix jak OS:
../foo.txt
trzeba upewnić się, że system operacyjny ustawia bieżącą ścieżkę poprawnie podczas swoich startów aplikacji. Wybierz odpowiednią ścieżkę i po prostu utwórz w niej plik.
użyj os.path.join lub os.sep –
Python zrozumie ukośnik w systemie Windows. – mob
Nie jestem facetem pytona :-) –
Ludzie nie zdają sobie z tego sprawy, ale Python z przyjemnością zaakceptuje przekierowanie w przód nawet w systemie Windows. Działa to dobrze na wszystkich platformach:
fobj = open("../filename", "w")
Czy to jest oficjalna funkcja? Nie pamiętam, aby było to widoczne w dokumentacji, a os.path.join zawsze powodowało, że programista nie powinien polegać na "/" będącym separatorem ścieżek ... – EOL
będzie to działać zarówno w systemie Windows, jak i Linux? – nunos
za pomocą os.pardir zajmie odpowiednią składnię katalogu nadrzędnego dla systemu operacyjnego, na którym aplikacja jest aktualnie uruchomiona. Tak, będzie działać zarówno w systemie Windows, jak i Linux. –
Dzięki. To było szybkie! – nunos