如何用Python读取xlsx格式Excel文件?及Unicode转义错误解析
Python读取xlsx文件及语法错误解析
一、语法错误含义及解决方法
你遇到的SyntaxError: (unicode error) 'unicodeescape' codec can't decode bytes in position 2-3: truncated \UXXXXXXXX escape错误,核心原因是:Python会将字符串里的\U识别为Unicode转义序列的起始标记,而该标记要求后面必须跟8位十六进制字符,但你的路径里\U后面是TCRS,不属于合法的转义内容,导致解析失败。
解决方法有三种,任选其一即可:
- 使用原始字符串:在字符串前加
r,让Python忽略所有转义字符规则,直接按字面解析路径:excel_file_path = r'Y:\UTCRS\25 Team Member Folders\Kevin Quaye\Cone_defects\new_data\Cone_data\Cone_data.xlsx' - 替换为双反斜杠:用两个反斜杠转义单个反斜杠,避免被识别为转义标记:
excel_file_path = 'Y:\\UTCRS\\25 Team Member Folders\\Kevin Quaye\\Cone_defects\\new_data\\Cone_data\\Cone_data.xlsx' - 使用正斜杠:Windows系统路径同样支持正斜杠,无需转义:
excel_file_path = 'Y:/UTCRS/25 Team Member Folders/Kevin Quaye/Cone_defects/new_data/Cone_data/Cone_data.xlsx'
二、Python读取xlsx格式文件的方法
1. 使用pandas(推荐,适合数据快速分析)
pandas是数据处理工具,能将xlsx文件直接转为DataFrame格式,方便后续清洗、分析操作。
- 先安装依赖库:
pip install pandas openpyxl - 读取示例代码:
import pandas as pd # 读取整个Excel文件的第一个工作表 df = pd.read_excel('你的文件路径.xlsx') # 读取指定名称的工作表 df = pd.read_excel('你的文件路径.xlsx', sheet_name='Sheet2') # 打印前5行数据查看结果 print(df.head())
2. 使用openpyxl(适合精细化操作Excel)
openpyxl支持读写xlsx文件,适合需要单独读取单元格、修改表格样式或内容的场景。
- 安装库:
pip install openpyxl - 读取示例代码:
from openpyxl import load_workbook # 加载Excel文件 wb = load_workbook('你的文件路径.xlsx') # 获取指定工作表 sheet = wb['Sheet1'] # 读取单个单元格数据 print(sheet['A1'].value) # 遍历所有行并打印数据 for row in sheet.iter_rows(values_only=True): print(row)
3. 使用xlrd(仅兼容旧版xlsx,不推荐)
注意:xlrd 2.0及以上版本不再支持xlsx格式,仅支持xls。如果必须用xlrd读取xlsx,需安装旧版本:
pip install xlrd==1.2.0
读取示例代码:
import xlrd wb = xlrd.open_workbook('你的文件路径.xlsx') # 通过工作表名称获取对象 sheet = wb.sheet_by_name('Sheet1') # 获取第一行所有数据 print(sheet.row_values(0)) # 获取第1行第1列的单元格数据(索引从0开始) print(sheet.cell_value(0, 0))
内容的提问来源于stack exchange,提问作者Kevin Quaye
相关产品推荐
相关产品推荐

