Come posso cambiare la directory nella directory con il mio script python? Finora ho capito che dovrei usare os.chdir
e sys.argv[0]
. Sono sicuro che c'è un modo migliore di scrivere la mia funzione per analizzare argv [0].Cambia directory nella directory di uno script Python
risposta
os.chdir(os.path.dirname(__file__))
per qualsiasi motivo __file__ era C: \ dev \ Python25 \ Lib \ idlelib, quindi una rapida sostituzione con argv [0] l'ha risolto. +1 e controllo contrassegnato –
Inoltre, a seconda della piattaforma, si potrebbe voler utilizzare 'os.path.abspath' sul risultato di' os.path.dirname' per assicurarsi che qualsiasi link simbolico o altro reindirizzamento del filesystem venga espanso correttamente. –
volte __file__
non è definito, in questo caso si può provare sys.path[0]
@Miki - quando è '__file__' non definito? –
@RobBednark: 'python3.3 -c" print (__ file __) "' –
@JanusTroelsen: anche vero per Python 2.7. – George
os.chdir(os.path.dirname(os.path.abspath(__file__)))
dovrebbe farlo.
os.chdir(os.path.dirname(__file__))
non funziona se lo script viene eseguito dalla directory in cui è presente.
sul sistema operativo Windows, se si chiama qualcosa come pitone somefile.py questo os.chdir (os.path.dirname (__ FILE__)) lancerà una WindowsError. Ma questo dovrebbe funzionare per tutti i casi:
import os
absFilePath = os.path.abspath(__file__)
os.chdir(os.path.dirname(absFilePath))
- 1. cambia directory con python
- 2. esecuzione di uno script Python all'interno di un altro Directory
- 3. Nome cartella Python nella directory
- 4. Cambia directory temporanea
- 5. Python: Importa file nella directory nonno
- 6. Per cambiare directory all'interno di uno script ruby?
- 7. Recupera directory principale di script
- 8. Come eseguo uno script arbitrario con una directory di lavoro della directory?
- 9. Run script di shell per ogni file nella directory
- 10. pitone: Modificare gli script directory di lavoro alla propria directory dello script
- 11. Gradle crea script di avvio duplicati nella directory bin
- 12. Distribuire uno script di shell con Ruby gem e installare nella directory bin
- 13. Scrivendo in una nuova directory in Python senza cambiare directory
- 14. Come posso importare uno script Python da una directory di pari livello?
- 15. cd Terminal in una determinata directory dopo aver eseguito uno script Python?
- 16. Cambiare la directory di script in homedir dell'utente in uno script di shell
- 17. Ottieni l'ultimo file nella directory
- 18. carica nuovi file nella directory
- 19. Creare virtualenv nella directory esistente senza creare una directory "locale"
- 20. Crontab - Esegui nella directory
- 21. DbMigration.SqlFile differenza nella directory di base
- 22. Uno script Scala può fare riferimento ad altro codice scala non compilato nella stessa directory?
- 23. Cambia utente in uno script di init?
- 24. script Nuget a directory diversa
- 25. Come posso chiamare uno script python da uno script python
- 26. Avvio di uno script python tramite un collegamento simbolico
- 27. Python - Verifica permessi directory
- 28. Struttura directory TDD Python
- 29. Directory Walker per Python
- 30. Python: il file di scrittura nella directory non esiste
È possibile copiare e incollare direttamente questo: 'import os; os.chdir (os.path.dirname (__ file __)) ' – Basj