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

Python函数间传递列表作为参数触发NameError报错问题咨询

问题诊断与调整方向

你遇到的NameError本质是变量作用域和返回值接收的问题,还有几处逻辑疏漏需要调整,调整方向如下:

  • 你在user_inputs()内部定义的entities_list、views_list属于函数局部变量,仅在函数内部生效。你当前直接调用了user_inputs()但没有用变量接收它的返回值,函数外部自然找不到这两个变量名。只需要在调用时写entities_list, views_list = user_inputs(),就能把返回的两个列表赋值给全局的同名变量,后续传入url_constructor就不会报错了。
  • 你当前user_inputs()的错误处理逻辑有问题:except分支里的return会直接终止函数,既不会让用户重新输入,还会出现「变量未定义就返回」的新错误,同时return之后的continue完全不会执行。你需要去掉except分支里的return语句,仅保留错误提示,让循环继续直到用户输入正确。
  • url_constructor函数有两处疏漏:一是url_list没有提前初始化就调用append方法,会触发新的报错,你可以选择在函数内部初始化url_list = [],遍历完成后将其作为返回值返回;二是变量名拼写错误,你生成的变量是url,append时写的是ur,需要修正拼写。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.27 00:45:02