簡體   English   中英

在python中讀取Excel文件

[英]Reading an Excel file in python

我想用python讀取一個excel文件。 我的第一次嘗試是關於閱讀工作表,然后第二次嘗試是關於閱讀單元格。 不幸的是,我堅持第一步。

編碼:

import openpyxl 
wb = openpyxl.load_workbook ("C:\\Users\\Alex\\Documents\\Python\\Übung\\example1.xlxs")

wb.get_sheet_by_name()

出現以下消息:

FileNotFoundError                         Traceback (most recent call last)
<ipython-input-26-7b234f637152> in <module>()
      1 import openpyxl
----> 2 wb = openpyxl.load_workbook("\\Users\\Alex\\Documents\\Python\\Übung\\example1.xlxs")
      3 wb.get_sheet_by_name()

~\Anaconda3\lib\site-packages\openpyxl\reader\excel.py in load_workbook(filename, read_only, keep_vba, data_only, guess_types, keep_links)
    169 
    170     """
--> 171     archive = _validate_archive(filename)
    172     read_only = read_only
    173 

~\Anaconda3\lib\site-packages\openpyxl\reader\excel.py in _validate_archive(filename)
    116 
    117     try:
--> 118         archive = ZipFile(filename, 'r', ZIP_DEFLATED)
    119     except BadZipfile:
    120         f = repair_central_directory(filename, is_file_like)

~\Anaconda3\lib\zipfile.py in __init__(self, file, mode, compression, allowZip64)
   1088             while True:
   1089                 try:
-> 1090                     self.fp = io.open(file, filemode)
   1091                 except OSError:
   1092                     if filemode in modeDict:

FileNotFoundError: [Errno 2] No such file or directory: '\\Users\\Alex\\Documents\\Python\\Übung\\example1.xlxs'

我使用絕對路徑引用了該文件,但該文件退出了,但是為什么會收到一個錯誤消息,指出仍未找到該文件? 至於其余的錯誤消息,我不知道它們是什么意思,或者是否可以將其消除。 感謝幫助。

您的代碼中有錯別字:

example1.xlxs >該擴展名不存在。

正確的Excel文件擴展名為xlsx

如果沒有代碼塊,讀取錯誤會有點困難,但是經過一些篩選之后,跟蹤讀取,

FileNotFoundError: [Errno2] No such file or directory:
'\Users\Alex\Documents\Python\Übung\example1.xlxs'

在你的代碼中,

wb = openpyxl.load_workbook("\Users\Alex\Documents\Python\Übung\example1.xlxs")

因此,似乎您沒有提供完整的路徑,您缺少了C:\\部分。 那樣容易嗎?

確認您已正確輸入文件路徑后,請隨時發回。

對於大多數數據操作(包括數據分析),熊貓已經成為許多人的首選庫。 甚至我也強烈建議您使用熊貓:

import pandas as pd
df = pd.read_excel("excelFilePath.xlsx", sheet_name="Sheet1", usecols="C,D,E")

注意:在上面的代碼中, usecols="C,D,E"是列號,而不是確切的列名。 JFYI: https//github.com/pandas-dev/pandas/issues/18273

在此處閱讀更多信息: https : //pandas.pydata.org/pandas-docs/stable/

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM