You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

执行股票数据获取代码时报错TypeError: 'module' object is not subscriptable

解决pandas_datareader调用时的TypeError: 'module' object is not subscriptable错误

问题场景

尝试通过pandas_datareader获取苹果公司(AAPL)2010-01-01至2020-12-30的股票数据,已知正确代码如下:

import numpy as np
import pandas as pd
import matplotlib.pyplot as plt
import pandas_datareader as data

start = "2010-01-01"
end = "2020-12-30"

df = data.DataReader('AAPL','yahoo', start, end)
df.head()

但实际执行时因代码误写触发报错,错误信息:

TypeError                                 Traceback (most recent call last)
/tmp/ipykernel_13005/124255995.py in <module>
      2 end = "2020-12-30"
      3 
----> 4 df = data.DataReader(data['AAPL'],'yahoo', start, end)
      5 df.head()

TypeError: 'module' object is not subscriptable

错误原因

报错的核心是代码里的data['AAPL']:你导入的data是pandas_datareader模块对象,模块不支持下标([])访问操作,这里应该直接传入股票代码字符串'AAPL'作为DataReader的第一个参数。

修复方案

将错误的调用行替换为正确的写法即可:

df = data.DataReader('AAPL','yahoo', start, end)

执行后就能正常获取AAPL的股票数据,得到预期的结果。

内容的提问来源于stack exchange,提问作者Sarathi Manikandan

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.17 20:22:39