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

Jupyter Notebook中IndexError求助:恩德贝莱语转绍纳语翻译报错

解决恩德贝莱语-绍纳语翻译代码中的IndexError错误

问题根源

报错是因为你的translations字典里至少有一个条目对应的列表只有一个元素。当代码尝试访问索引[1](获取绍纳语翻译)时,该位置不存在,就触发了"列表索引越界"错误。

修复方案

方案一:在代码中添加安全检查

修改代码,先确认列表元素数量足够再访问索引1,既能避免报错,也能优雅处理缺失的翻译:

elif word in translations:
    ndebele_word = translations[word][0]
    print(f'\nNDEBELE: {ndebele_word}')
    # 检查是否存在绍纳语翻译
    if len(translations[word]) >= 2:
        shona_word = translations[word][1]
        print(f'\nSHONA: {shona_word}')
    else:
        print("\nSHONA: 暂无对应翻译。")
else:
    print("\n未找到对应翻译。")

方案二:检查并修正翻译字典

遍历你的translations字典,确保每个条目都是包含两个元素的列表(第一个是恩德贝莱语,第二个是绍纳语):

错误示例(会触发报错):

translations = {
    "sithi": ["我们说"]  # 缺少绍纳语翻译
}

修正后示例:

translations = {
    "sithi": ["我们说", "tinoziva"]  # 同时包含恩德贝莱语和绍纳语翻译
}

这样就能从根源上消除错误。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.28 09:05:10