Python中如何指定索引值?读取Excel首列遇IndexError求助
问题解决:读取Excel指定列与代码错误修复
读取整列CAP_ID的正确方法
- 直接通过列名索引就能获取整列数据:
df['CAP_ID'] - 不确定列名是否正确时,先打印所有列名确认:
print(df.columns)
代码中的错误修正
- 笔误问题:代码里的
capacitor_settings_df未定义,替换为你已经加载好的df即可 - 语法错误:最后一行代码缺少闭合括号,正确写法是
capacitor_row = df[df['CAP_ID'] == cap_id_input.iloc[0]] - IndexError 解决:
cap_id_input.iloc[0]报错是因为cap_id_input没有数据或者索引越界,先执行print(cap_id_input)确认它有内容,再进行后续操作
修正后的完整代码
import pandas as pd # 加载Excel表 df = pd.read_excel(r'C:\FILENAMEHERE.xlsx') print(df) # 打印列名确认CAP_ID存在 print(df.columns) # 获取整列CAP_ID数据 cap_id_column = df['CAP_ID'] print(cap_id_column) # 根据输入的CAP_ID查找对应行 if not cap_id_input.empty: capacitor_row = df[df['CAP_ID'] == cap_id_input.iloc[0]] print(capacitor_row) else: print("cap_id_input 为空,无法执行查找")
内容的提问来源于stack exchange,提问作者Shy
相关产品推荐
相关产品推荐

