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

如何从tropycal生成的季节字典中提取各季总风暴数?

解决tropycal获取气旋季总风暴数的问题

你报错的核心原因是:ibtracs_all.get_season(year)返回的不是普通字典,而是tropycal库的Season类实例,不能直接用字典键值对的方式访问属性。正确的获取方式如下:

方法一:通过Season对象的season_summary属性提取

Season实例的season_summary是一个内置字典,包含该季所有汇总数据,你需要先通过对象属性访问这个字典,再提取总风暴数:

# 遍历所有年份,获取对应季的总风暴数
for year in range(1970, 2020):
    season_obj = season[year]
    total_storms = season_obj.season_summary['total_storms']
    print(f"{year} 年总风暴数:{total_storms}")

方法二:直接访问Season对象的封装属性

tropycal的Season类已经把总风暴数封装成了直接可调用的属性,无需从summary字典中提取:

for year in range(1970, 2020):
    total_storms = season[year].total_storms
    print(f"{year} 年总风暴数:{total_storms}")

排查小技巧

如果不确定属性名是否正确,可以用以下代码快速验证:

# 取任意年份的Season对象作为样本
sample_season = season[1970]
# 打印该对象所有可用属性和方法
print(dir(sample_season))
# 打印完整的season_summary字典,确认键名细节
print(sample_season.season_summary)

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.06 03:10:16