web-dev-qa-db-fra.com

ImportError: Aucun module nommé 'xlrd'

J'utilise actuellement PyCharm avec Python version 3.4.3 pour ce projet particulier.

Cette PyCharm avait auparavant Python2.7, et je suis passé à 3.4.3.

J'essaie d'extraire des données d'un fichier Excel à l'aide de pandas.

Voici mon code:

import pandas as pd

df = pd.read_Excel("File.xls", "Sheet1")
print (df)

Lorsque j'ai exécuté ce code, j'obtiens cette erreur.

ImportError: No module named 'xlrd'

J'ai cherché Stackoverflow et trouvé quelques suggestions: J'ai essayé avec 

pip install xlrd

Mais, quand j'ai fait cela, le message dit 

"Requirement already satisfied: xlrd in ./anaconda2/usr/lib/python2.7/site-packages"

Toute suggestion?

21
King Java

J'ai eu le même problème. Je suis allé au terminal (sous Linux) et ai tapé 

Sudo pip3 install xlrd

Ensuite, j'ai importé xlrd en python et utilisé le même code:

df = pd.read_Excel("File.xlsx", "Sheet1")
print (df)

Cela a fonctionné pour moi !! 

21
Binamrata Sharma

Cliquez sur l'icône Bulb juste à côté de "importer xlrd" & cliquez sur installer le paquet clrd, le paquet sera automatiquement installé

3
Azhar Uddin

Si vous êtes dans un terminal sous Bash ou tout autre shell semi-avancé avec complétion par tabulation, essayez d'écrire pip suivi de <tab>. Si je le fais, je vois écrit: 

none@vacuum:~$ pip  
pip     pip3    pip3.5  pip3.6

Comme vous pouvez le constater, je peux choisir d'exécuter les commandes pip uniquement sous pip, mais je peux choisir des versions encore plus récentes de pip. Pour savoir quelle version est associée à la commande pip (avec rien d'autre), exécutez comme d'habitude pip avec l'indicateur --version ou -V. Dans mon cas, pip -V donne:

none@vacuum:~$ pip -V  
pip 9.0.1 from /usr/local/lib/python3.6/dist-packages (python 3.6)

De plus, si vous développez sous PyCharm, vous pouvez appuyer sur Alt+Enter lorsque le curseur se trouve sous le nom du module, ce qui ne peut pas être importé pour ouvrir un menu flottant contextuel vous permettant d'installer le module. (Vous pouvez également gérer la liste des modules installés pour une version spécifique de Python dans le menu des paramètres de PyCharm, dans le sous-menu Project Interpreter.)

0
Acsor

J'ai python 2.7, 3.5 et 3.6 sur ma machine Linux Mint pour certaines raisons. 

Mon spyder utilise Python 3.5 et j'ai eu le même problème. Ce que j'ai fait c'est 

  • aller dans le dossier /usr/local/lib/python2.7/dist-packages
  • Copiez le dossier xlrd (notez que pour faire cette action vous avez un clic droit et vous l'ouvrez en tant que root)
  • Maintenant, allez au /usr/local/lib/python3.5/dist-packages ou /usr/local/lib/python3.6/dist-packages et collez le dossier xlrd là-bas. 

Cela a fonctionné pour moi !!!

Cette méthode ne change pas le chemin par défaut, je peux donc continuer avec python 2.7 sans subir de dommages (quelque chose comme SageMath que j'utilise beaucoup)

0
David

La même chose m'est arrivé avec pycharm, je l’avais installé avec pip, pip3 et anaconda et cela ne fonctionnait toujours pas… J'ai installé manuellement le paquet à partir de pycharm-> preferences -> project -> project interpreter -> +.__ et cela a fonctionné.

0
nat

L'exécution de pip install xlrd a terminé l'installation, mais cela n'a pas résolu l'erreur "aucun module nommé nommé xlrd".

La copie du dossier xlrd dans le même dossier que celui où les programmes .py sont stockés a résolu le problème.

0
Amal Raj