Quelle est la différence entre makedirs et mkdir de os?
je suis confus de l'utiliser sur ces deux os
méthodes pour créer le nouveau répertoire.
s'il vous Plaît me donner quelques exemple en Python.
3 réponses
makedirs()
crée tous les répertoires intermédiaires si elles n'existent pas (comme mkdir -p
en bash).
mkdir()
peut créer un sous-répertoire unique, et lancera une exception si les répertoires intermédiaires qui n'existent pas sont spécifiés.
peut être utilisé pour créer une seule feuille répertoire (dirA):
os.mkdir('dirA')
os.makedirs('dirA')
mais makedirs doit être utilisé pour créer "branches":
os.makedirs('dirA/dirB')
fonctionne [l'ensemble de la structure est créée]
mkdir
travail ici sidirA
existe déjà, mais si ce n'est pas une erreur sera levée.
notez que contrairement à mkdir -p
dans bash, soit échouera si la feuille existe déjà.
(ne peut pas commenter, il suffit d'ajouter à la réponse de NPE.)
En Python3,os.makedirs
a un paramètre par défaut exist_ok=False
.
Si vous le réglez à True
, puis os.makedirs
jeter toute exception si la feuille existe.
(Alors que os.mkdir
n'a pas ce paramètre.)
comme ceci:
os.makedirs('dirA', exist_ok=True)
P.S.
Vous pouvez taper ?
avant le nom d'une méthode dans l'interpréteur de commandes IPython rapide coup d'oeil à la documentation.
par exemple:
>>> import os
>>> ? os.makedirs
os.makedirs est la fonction de Python, mkdir est la fonction Bash unix.