Je suis confus d'utiliser à propos de ces deux os
méthodes pour créer le nouveau répertoire.
Veuillez me donner un exemple en Python.
makedirs()
crée tous les répertoires intermédiaires s'ils n'existent pas (tout comme mkdir -p
en bash).
mkdir()
peut créer un seul sous-répertoire et lèvera une exception si des répertoires intermédiaires qui n'existent pas sont spécifiés.
L'un ou l'autre peut être utilisé pour créer un seul répertoire 'feuille' (dirA):
os.mkdir('dirA')
os.makedirs('dirA')
Mais les makedirs doivent être utilisés pour créer des "branches":
os.makedirs('dirA/dirB')
fonctionnera [toute la structure est créée]mkdir
peut fonctionner ici si dirA
existe déjà, mais si ce n'est pas le cas, une erreur sera générée.
Notez que contrairement à mkdir -p
Dans bash, l'un ou l'autre échouera si la feuille existe déjà.
(Je ne peux 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 définissez sur True
, alors os.makedirs
pas lèvera toute exception si la feuille existe.
(Bien que os.mkdir
N'ait pas ce paramètre.)
Juste comme ça:
os.makedirs('dirA', exist_ok=True)
P.S.
Vous pouvez taper ?
Devant le nom d'une méthode dans IPython Shell pour jeter un œil à la documentation.
par exemple.:
>>> import os
>>> ? os.makedirs