Je souhaite créer un répertoire (nommé 'téléchargé') dans mon répertoire de bureau; est-ce pas de travail ?:Python: Création de répertoires
import os
os.mkdir('~/Desktop/downloaded/')
Je souhaite créer un répertoire (nommé 'téléchargé') dans mon répertoire de bureau; est-ce pas de travail ?:Python: Création de répertoires
import os
os.mkdir('~/Desktop/downloaded/')
Vous ne pouvez pas simplement utiliser ~
Vous devez utiliser os.path.expanduser pour remplacer le ~
avec un bon chemin.
Donc vous pouvez remplacer ce code par 'os.mkdir (os.expanduser ('~/Desktop/Downloaded/')) '. – LeafStorm
@Leafstorm 'os.path.expanduser', pas' os.expanduser'. –
Utilisez
import os
os.mkdir(os.path.expanduser("~/Desktop/downloaded"))
Le caractère ~
est une convention shell POSIX qui représente le contenu de la variable d'environnement HOME. Donc, lorsque vous tapez dans une coquille:
$ mkdir ~/Desktop/downloaded
c'est la même chose que taper
$ mkdir $HOME/Desktop/downloaded
Essayez de changer la variable d'environnement HOME pour vérifier ce que je dis. Comme c'est une convention shell, c'est quelque chose que ni le noyau traite spécialement, ni Python, et la fonction python os.mkdir
est juste un wrapper autour de l'appel système du noyau mkdir(2)
. Par commodité, Python fournit la fonction os.path.expanduser
pour remplacer le tilde par le contenu de la variable d'environnement HOME env.
$ HOME=/tmp
$ python
Python 2.6.4 (r264:75706, Mar 2 2010, 00:28:19)
[GCC 4.3.4] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import os
>>> os.path.expanduser("~/dada")
'/tmp/dada'
une autre façon, utilisez os.environ
import os
home=os.environ["HOME"]
path=os.path.join(home,"Desktop","download")
try:
os.mkdir(path)
except IOError,e:
print e
else:
print "Successful"
Si le répertoire de bureau est dans une langue ????? comment localiser sur Desktop dans n'importe quelle langue? – Ernie
Pour le code qui fait l'équivalent de "mkdir -p" voir http://stackoverflow.com/q/600268/319741 –