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

使用pick库开发Python答题游戏时遇AttributeError问题求助

问题排查与解决

错误根源

你遇到的AttributeError: 'tuple' object has no attribute 'split',核心原因是**title变量被错误定义为元组,而非字符串**。

看这段代码:

title = '-----------\n QUIZZABLE \n-----------\n   Quiz    \n-----------\n\nQuiz:', quiz_title

用逗号分隔两个字符串时,Python会自动将其解析为元组(str1, str2),而pick库的title参数要求传入字符串类型——内部会对title执行split操作处理换行,元组没有该方法,因此抛出错误。

修复方案

将title改为字符串拼接形式,推荐两种写法:

方法1:使用f-string(Python 3.6+支持)

title = f'-----------\n QUIZZABLE \n-----------\n   Quiz    \n-----------\n\nQuiz: {quiz_title}'

方法2:使用字符串加号拼接

title = '-----------\n QUIZZABLE \n-----------\n   Quiz    \n-----------\n\nQuiz: ' + quiz_title

额外优化建议

  1. 代码中大量出现int(1)、int(quiz_current_line) + int(1)这类冗余写法,直接用数字1和+=1更简洁:
    quiz_question_count = 1
    quiz_current_line = 1
    # ...
    quiz_current_line += 1
    quiz_question_option += 1
    
  2. 读取题目时,可考虑用enumerate或更清晰的循环结构,避免手动维护quiz_current_line计数器,减少出错概率。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.06 14:19:54