J'utilise Python 3.2 sur Windows 7. Lorsque j'ouvre le shell Python, comment puis-je savoir quel est le répertoire actuel et comment le changer en un autre répertoire où se trouvent mes modules?
J'utilise Python 3.2 sur Windows 7. Lorsque j'ouvre le shell Python, comment puis-je savoir quel est le répertoire actuel et comment le changer en un autre répertoire où se trouvent mes modules?
Réponses:
Vous pouvez utiliser le osmodule.
>>> import os
>>> os.getcwd()
'/home/user'
>>> os.chdir("/tmp/")
>>> os.getcwd()
'/tmp'Mais s'il s'agit de trouver d'autres modules: vous pouvez définir une variable d'environnement appelée PYTHONPATH, sous Linux serait comme
export PYTHONPATH=/path/to/my/library:$PYTHONPATHEnsuite, l'interprète recherche également à cet endroit les importmodules ed. Je suppose que le nom serait le même sous Windows, mais je ne sais pas comment changer.
Éditer
Sous Windows:
set PYTHONPATH=%PYTHONPATH%;C:\My_python_lib(extrait de http://docs.python.org/using/windows.html )
modifier 2
... et encore mieux: utilisez virtualenvet virtualenv_wrapper, cela vous permettra de créer un environnement de développement où vous pourrez ajouter des chemins de modules comme bon vous semble (add2virtualenv ) sans polluer votre installation ou environnement de travail "normal".
http://virtualenvwrapper.readthedocs.org/en/latest/command_ref.html
PYTHONPATH, mais notez que l'OP spécifie Windows ...
                    sys.pathintérieur de votre script.
                    PYTHONPATHglobalement si vous avez plus d'un Python installé (ou si des programmes installés qui regroupent Python avec eux - en d'autres termes, vous ne le saurez jamais): cela peut interrompre votre installation de manière mystérieuse
                    tu veux
import os
os.getcwd()
os.chdir('..')os.chdir('C:/Users/Ajeya/Documents'), soit os.chdir('C:\\Users\\Ajeya\\Documents'), ou os.chdir(r'C:\Users\Ajeya\Documents').
                    os.getcwd()uniquement à des fins de débogage afin que nous puissions voir quel est le répertoire de travail avant de le modifier. Le code pour changer réellement cwdest justeos.chdir('..')
                    >>> import os
>>> os.system('cd c:\mydir')En fait, os.system()peut exécuter n'importe quelle commande que l'invite de commande Windows peut exécuter, pas seulement changer dir.
Changer le répertoire courant n'est pas la façon de gérer la recherche de modules en Python.
Voir plutôt les documents pour le chemin de recherche de module pour savoir comment Python trouve le module à importer.
Voici un extrait pertinent de la section Modules standard :
La variable sys.path est une liste de chaînes qui détermine le chemin de recherche de l'interpréteur pour les modules. Il est initialisé sur un chemin par défaut tiré de la variable d'environnement PYTHONPATH, ou d'une valeur par défaut intégrée si PYTHONPATH n'est pas défini. Vous pouvez le modifier en utilisant des opérations de liste standard:
>>> import sys
>>> sys.path.append('/ufs/guido/lib/python')
Pour répondre à votre question d'origine sur l'obtention et la configuration du répertoire actuel:
>>> help(os.getcwd)
getcwd(...)
    getcwd() -> path
    Return a string representing the current working directory.
>>> help(os.chdir)
chdir(...)
    chdir(path)
    Change the current working directory to the specified path.import sys sys.path.append('/home/g/PycharmProjects/your_project/') 
                    Le moyen le plus simple de changer le répertoire de travail actuel en python est d'utiliser le package 'os'. Ci-dessous, un exemple pour ordinateur Windows:
# Import the os package
import os
# Confirm the current working directory 
os.getcwd()
# Use '\\' while changing the directory 
os.chdir("C:\\user\\foldername")Si vous import ospouvez utiliser os.getcwdpour obtenir le répertoire de travail actuel et que vous pouvez utiliser os.chdirpour modifier votre répertoire