web-dev-qa-db-fra.com

Python (Windows) - ImportError: Aucun module nommé site

J'essaie d'installer Python pour la première fois. J'ai téléchargé le programme d'installation suivant à partir du site Web Python: Python 2.7.1 Windows Installer (Windows binaire - n'inclut pas la source) . J'ai ensuite exécuté le programme d'installation, sélectionné "Tous les utilisateurs" et tout allait bien. J'ai installé Python à l'emplacement par défaut:

C:\Python27

Ensuite, pour vérifier que Python a été installé correctement, j’ai accédé à mon répertoire Python et j’ai exécuté la commande "python" dans l’invite Windows cmd. Cela me renvoie l'erreur suivante:

ImportError: Aucun module nommé site

Quand je fais 'python -v' je reçois ce qui suit:

#installing zipimport hook
import zipimport # builtin
# crochet de zipimport installé
#ImportError: No module named site # clear builtin ._
#clear sys.path # clear sys.argv
#clear sys.ps1 # clear sys.ps2
#clear sys.exitfunc # clear sys.exc_type
#clear sys.exc_value # clear sys.exc_traceback
#clear sys.last_type # clear sys.last_value
#clear sys.last_traceback # clear sys.path_hooks
#clear sys.path_importer_cache # clear sys.meta_path
#clear sys.flags # clear sys.float_info
#restore sys.stdin # restore sys.stdout
#restore sys.stderr # nettoyage main
#cleanup [1] zipimport # cleanup[1] signal
#cleanup [1] exceptions # cleanup[1] _warnings
#cleanup sys # nettoyage builtin
#cleanup ints: 6 unfreed ints # nettoyage des flotteurs 

Quand je fais dir C:\Python27\Lib\site.py* je reçois ce qui suit:

C:\Utilisateurs\Mimminito> répertoire C:\Python27\Lib\site.py *
Le volume dans le lecteur C n'a pas d'étiquette.
Le numéro de série du volume est DAB9-A863 

Répertoire de C:\Python27\Lib 

13/11/2010 20:08 20,389 site.py
1 fichier (s) 20,389 octets
0 Dir (s) 694,910,976 octets gratuit 

Des idées?

90
Mimminito

Hey, je me suis penché sur ce problème pendant presque une journée et j'ai finalement eu une avancée décisive. Essaye ça:

  1. Définition des variables PYTHONPATH/PYTHONHOME

    Cliquez avec le bouton droit de la souris sur l'icône Ordinateur dans le menu de démarrage, accédez à propriétés . Dans l'onglet de gauche, sélectionnez Paramètres système avancés. Dans la fenêtre suivante, accédez à l'onglet Avancé, puis cliquez sur Variables d'environnement en bas. Cliquez dans la liste des variables utilisateur et commencez à taper Python, puis répétez l'opération pour les variables système, juste pour vous assurer que vous n'avez pas de variables mal définies pour PYTHONPATH ou PYTHONHOME. Ensuite, ajoutez de nouvelles variables (je l’ai fait dans System plutôt que User, bien que cela puisse également fonctionner pour User): PYTHONPATH, défini sur C:\Python27\Lib. PYTHONHOME, défini sur C:\Python27.

J'espère que cela t'aides!

137
RenderCase

Solution rapide: réglez PYTHONHOME et PYTHONPATH et incluez PYTHONHOME dans PATH

Par exemple, si vous avez installé c:\Python27

set PYTHONHOME=c:\Python27
set PYTHONPATH=c:\Python27\Lib
set PATH=%PYTHONHOME%;%PATH%

Assurez-vous de ne pas avoir de "\" sur les pythons PYTHON *, cela semble le briser.

37
slckin

Assurez-vous que votre variable d’environnement PYTHONHOME est définie correctement. Vous recevrez cette erreur si PYTHONHOME pointe vers un emplacement non valide ou vers une autre installation Python que vous essayez d’exécuter.

Essaye ça:

C:\>set PYTHONHOME=C:\Python27
C:\>python

Utilisation

setx PYTHONHOME C:\Python27

pour le définir de manière permanente pour les invites de commande suivantes

12
Mika

Je rencontrais ce problème après avoir installé Windows Python et Cygwin Python et essayé d'exécuter Cygwin Python à partir de Cygwin. Je l'ai résolu en exporting PYTHONHOME =/usr/et PYTHONPATH =/usr/lib/python2.7

12
Jorge Vargas

Essayez-vous d'exécuter Windows Python à partir de Cygwin? J'ai le même problème. Python dans Cygwin ne parvient pas à importer le site. Python dans Cmd fonctionne.

Il semble que vous deviez vous assurer d'exécuter PYTHONHOME et PYTHONPATH via cygwin -aw pour en faire des chemins Windows. En outre, python semble utiliser des chemins incorrects.

Je pense que je devrai installer python via cygwin pour le faire fonctionner.

4
idbrii

Pour Windows 10 (suivi de @slckin answer), vous pouvez le définir via la ligne de commande avec:

setx PYTHONHOME "C:\Python27"
setx PYTHONPATH "C:\Python27\Lib"
setx PATH "%PYTHONHOME%;%PATH%"
4
Vesanto

Recherchezsite.pyet ajoutez son chemin dansPYTHONPATH. Cela résoudra votre problème.

3
DigviJay Patil

Pour moi, cela est arrivé parce que j'avais 2 versions de python installées: python 27 et python 3.3. La variable de chemin d’accès de ces deux dossiers était définie et c’est pourquoi il y avait ce problème. Pour résoudre ce problème, j'ai déplacé python27 dans le dossier temp, comme cela me convenait avec python 3.3. Vérifiez donc les variables d’environnement telles que PATH, PYTHONHOME, car cela pourrait poser problème. Merci.

2
kinshuk4

Si quelqu'un découvre qu'il ne fonctionne toujours pas avec des utilisateurs non-administrateurs:

Exemple d'erreur:

ImportError: No module named iso8601

vous devez définir l'option '--always-unzip' pour easy_install: 

easy_install --always-unzip python-keystoneclient

Cela décompressera vos fichiers Egg et permettra à l'import de les trouver.

1
Noma4i

Je suis passé par le même problème de ImportError: No module named site lors de l'installation de python 2.7.11

Au départ, j'avais Python2.5 et le chemin PYTHONHOME était défini sur Python2.5 . Je l'ai renommé en C:\Python27\ et le problème a été résolu.

1
Debashish

Vous pouvez essayer le Open Source Active Python Setup qui est un programme d’installation Python bien conçu pour Windows .

0
philnext

Dans mon cas, le problème était un autre fichier site.py, qui avait été résolu avant celui de Python\Lib, en raison du paramètre PATH.

Environnement: Windows 10 Pro, Python27.

PgAdmin est installé sur mon bureau, dans le fichier C:\Program Files (x86)\pgAdmin\venv\Lib\site.py. Parce que la variable d'environnement PATH avait la maison de pdAdmin plus tôt que Python (apparemment une mauvaise idée en premier lieu), pgAdmin's site.py a été trouvé en premier.

Tout ce que j'avais à faire pour résoudre le problème était de déplacer la maison de pgAdmin plus tard que Python, dans PATH

0
Ivan C

J'ai voté la réponse de slckin. Mon problème était que j'étais pensif et que j'ai ajouté des guillemets autour des chemins. J'ai supprimé les guillemets dans les trois variables: PYTHONHOME, PYTHONPATH et PATH. Notez qu'il s'agissait d'un fichier cmd ou bat pour configurer l'environnement pour d'autres outils. Cependant, les guillemets doubles peuvent être utiles dans un paramètre d'icône. Dactylographie 

ensemble

a révélé que les citations étaient dans le chemin et n’avaient pas été abandonnées comme prévu. J'ai également court-circuité le PATH afin qu'il contienne moins de 256 caractères.

0
Greg