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

Python运行代码触发NameError: name 'sentences'未定义如何解决

报错原因

你遇到的NameError: name 'sentences' is not defined报错,核心是代码运行到分词列表推导式时,尚未找到已声明赋值的sentences变量,按以下步骤排查即可解决:

  • 提前完成sentences变量定义
    sentences通常是存储多句文本字符串的列表,你需要在运行报错代码前先完成它的赋值,完整可运行示例如下:
    import nltk
    nltk.download('punkt')
    from nltk.tokenize import sent_tokenize, word_tokenize
    
    # 替换为你的实际待处理文本
    raw_text = "这是第一句待处理的文本。这是第二句文本。"
    # 先完成sentences变量的定义
    sentences = sent_tokenize(raw_text)
    # 再运行原来的分词代码
    word_sentences = [word_tokenize(sentence) for sentence in sentences]
    
  • 检查变量拼写与作用域
    确认变量名拼写完全为sentences,没有错写为sentence、sentens等近似名称;如果sentences是在函数、条件分支等局部代码块内定义的,需要保证你调用它的位置和定义位置在同一个作用域,或者提前将它赋值到全局作用域。
  • 检查ipython单元格执行顺序
    从报错日志可以看到你使用的是ipython/Jupyter环境,如果你已经编写了定义sentences的代码,要确认对应代码单元格已经被提前执行,没有跳过或者执行顺序颠倒。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.09 15:57:02