2012-06-21 4 views
1
from xlrd import * 

book = open_workbook("File_1.xls") 

#sheet = book.sheets()[0]   
#book.sheets() returns a list of sheet objects...  alternatively... 
#sheet = book.sheet_by_name("qqqq") #we can pull by name 
sheet = book.sheet_by_index(0)  #or by the index it has in excel's sheet collection 

r = sheet.row(0)     #returns all the CELLS of row 0, 
c = sheet.col_values(0)    #returns all the VALUES of row 0, 

for i in xrange(sheet.nrows): 
print sheet.row_values(5) 

Je lis un fichier qui est dans mon bureau, mais quand je courais le script écrit en python, il est d'erreur donnanterreur Obtenir en lisant la feuille Excel en utilisant python

Traceback (most recent call last): 
    File "C:\Python26\ReadXLS.py", line 6, in <module> 
    book = open_workbook("File_1.xls") 
    File "C:\Python26\Lib\site-packages\xlrd\__init__.py", line 449, in open_workbook 
    ragged_rows=ragged_rows, 
File "C:\Python26\Lib\site-packages\xlrd\__init__.py", line 941, in biff2_8_load 
f = open(filename, open_mode) 
    IOError: [Errno 2] No such file or directory: 'File_1.xls' 
+1

'' Im livre = open_workbook ("File_1.xls") en supposant que ' "File_1.xls"' est dans le même répertoire que le script? –

+1

Le fichier et le script python se trouvent-ils dans le répertoire saem? Avez-vous essayé de spécifier complètement le chemin du fichier? – acattle

Répondre

2

Vous avez besoin de cd Desktop avant votre course Python, comme message d'erreur indique que le fichier n'existe pas:

No such file or directory: 'File_1.xls' 

Une autre solution serait de déplacer le fichier Python dans le même dossier que le fichier Excel.

+0

J'ai mis les fichiers dans le même répertoire mais le problème persiste. –

1

Vérifiez que le script et le fichier se trouvent dans le répertoire ou spécifiez le chemin d'accès absolu à votre fichier Excel.

Notez également que si vous essayez d'ouvrir un fichier relativement, cela sera fait en utilisant le répertoire de travail actuel dans lequel l'interpréteur python a été initialisé.

Je recommande également openpyxlhttp://packages.python.org/openpyxl/ si vous avez besoin de travailler avec les nouveaux formats xlsx.

+1

Je crois que openpyxl n'ouvre pas les fichiers xls seulement les plus récents xlsx/m. Confirmé avec les fichiers que je viens d'essayer: openpyxl.shared.exc.InvalidFileException: Le fichier n'est pas un fichier zip – RuiDC

+0

@RuiDC vous remercie. –

1

Si jamais, vous faites face à problème avec les chemins, essayez de trouver votre chemin en cours dans le programme

>>> import os.path 
>>> import os 
>>> os.curdir 
'.' 
>>> os.path.abspath(os.curdir) 
'/Users/xxxx/temp' 
>>> 

Voici comment cela se voit sur Unix. Il montrera différemment sur Windows.

De cette façon, vous saurez, si c'est l'endroit où votre fichier actuel est placé.

code:

from xlrd import * 
import os.path 
import os 
print os.path.abspath(os.curdir) 

book = open_workbook("File_1.xls") 
#sheet = book.sheets()[0]   
#book.sheets() returns a list of sheet objects...  alternatively... 
#sheet = book.sheet_by_name("qqqq") #we can pull by name 
sheet = book.sheet_by_index(0)  #or by the index it has in excel's sheet collection 

r = sheet.row(0)     #returns all the CELLS of row 0, 
c = sheet.col_values(0)    #returns all the VALUES of row 0, 

for i in xrange(sheet.nrows): 
print sheet.row_values(5) 
+0

@ sarkar.shukla: Essayez de le déboguer de cette façon. – pyfunc

Questions connexes