Περισσότερα
Πώς μπορώ να λάβω την πλήρη διαδρομή του τρέχοντος καταλόγου του αρχείου;
Θέλω να λάβω τη διαδρομή του τρέχοντος αρχείου's καταλόγου. Δοκίμασα:
>>> os.path.abspath(__file__)
'C:\\python27\\test.py'
Αλλά πώς μπορώ να ανακτήσω τη διαδρομή του καταλόγου's;
Για παράδειγμα:
'C:\\python27\\'
663
3
Αν εννοείτε τον κατάλογο του σεναρίου που εκτελείται:
Αν εννοείτε τον τρέχοντα κατάλογο εργασίας:
Σημειώστε ότι πριν και μετά το
file
υπάρχουν δύο υπογράμμιση, όχι μόνο μία.Σημειώστε επίσης ότι αν εκτελείτε διαδραστικά ή έχετε φορτώσει κώδικα από κάτι άλλο εκτός από αρχείο (π.χ.: μια βάση δεδομένων ή έναν διαδικτυακό πόρο), το
__file__
μπορεί να μην έχει οριστεί, καθώς δεν υπάρχει η έννοια του "τρέχοντος αρχείου". Η παραπάνω απάντηση υποθέτει το πιο συνηθισμένο σενάριο εκτέλεσης ενός σεναρίου python που βρίσκεται σε ένα αρχείο.Μπορείτε να χρησιμοποιήσετε τη βιβλιοθήκη
os
καιos.path
εύκολα ως εξήςΤο
os.path.dirname
επιστρέφει τον ανώτερο κατάλογο από τον τρέχοντα. Μας επιτρέπει να αλλάξουμε σε ένα ανώτερο επίπεδο χωρίς να περάσουμε κάποιο όρισμα αρχείου και χωρίς να γνωρίζουμε την απόλυτη διαδρομή.