gpt4 book ai didi

python - tkinter 数学程序类型错误

转载 作者:太空宇宙 更新时间:2023-11-04 10:45:32 24 4
gpt4 key购买 nike

你好,我正在制作一个适用于不同用户的数学程序,然后将分数写入配置文件 (.ini),但问题是每当我尝试这样做时,我都会收到一条错误消息:

Exception in Tkinter callback
Traceback (most recent call last):
File "C:\Program Files\Python33\lib\tkinter\__init__.py", line 1475, in __call__
return self.func(*args)
File "C:\Users\Public\Documents\Programming\Math-Bot\Math-Bot.py", line 105, in check
config[user]['right'] = config[user]['right'] + int(1)
TypeError: Can't convert 'int' object to str implicitly

这是我用来判断他们的答案是否正确的代码:

def check():
if guess.get().lower() == str(no1 + no2):
global ri
answer.set('Right!')
ri = ri + 1
right.set(ri)
config[user]['right'] = config[user]['right'] + int(1)
else:
global wa
answer.set('Wrong, It Was ' + str(no1 + no2))
wa = wa + 1
wrong.set(wa)
config[user]['wrong'] = config[user]['right'] + int(1)

有什么方法可以解决这个问题吗?

提前致谢!

最佳答案

如果我对您的代码的理解正确,您的配置值是一个代表 数字的字符串,对吗?如果是这样,您应该首先将其解析为 int(如 iCodez 所建议的),然后添加它,最后再次将其格式化为字符串:

config[user]['right'] = str( int(config[user]['right']) + 1 )

这是必要的,因为 Python 是一种强类型语言:大多数时候,它不允许不同类型之间的操作(在本例中,intstr) ,要求程序员在应用常用运算符之前将一个显式转换为另一个。

关于python - tkinter 数学程序类型错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17635219/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com