Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/drupal/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 我不知道';我不知道为什么它总是弹出一条错误消息_Python_Tkinter - Fatal编程技术网

Python 我不知道';我不知道为什么它总是弹出一条错误消息

Python 我不知道';我不知道为什么它总是弹出一条错误消息,python,tkinter,Python,Tkinter,我正在使用Python3。我不知道我从哪里弄错了这个密码。它不断弹出一条错误消息 from tkinter import * class calculator(): def __init__(self): window=Tk() window.title("Calculator") self.var1=StringVar() self.var2=StringVar() number1=Label(window

我正在使用Python3。我不知道我从哪里弄错了这个密码。它不断弹出一条错误消息

from tkinter import *
class calculator():
    def __init__(self):
        window=Tk()
        window.title("Calculator")
        self.var1=StringVar()
        self.var2=StringVar()
        number1=Label(window,text="Number_1 =").grid(row=1,column=1)
        number2=Label(window,text="Number_2 =").grid(row=2,column=1)
        num1=Entry(window,textvariable=self.var1).grid(row=1,column=2)
        num2=Entry(window,textvariable=self.var2).grid(row=2,column=2)
        plus=Button(window,text="+",command=self.addition).grid(row=3,column=1)
        minus=Button(window,text="-",command=self.subtraction).grid(row=3,column=2)
        times=Button(window,text="*",command=self.multiplication).grid(row=3,column=3)
        divides=Button(window,text="/",command=self.division).grid(row=3,column=4)
        self.result=Label(window,text="result",bg="black",fg="white").grid(row=3,column=5)
        window.mainloop()
    def addition(self):
        self.result["text"]= str(float((self.var1.get())) +(float(self.var2.get())))
    def subtraction(self):
        self.result["text"] = str(float((self.var1.get())) +(float(self.var2.get())))
    def multiplication(self):
        self.result["text"] = str(float((self.var1.get())) +(float(self.var2.get())))
    def division(self):
        self.result["text"] = str(float((self.var1.get())) +(float(self.var2.get())))
calculator()        
错误声明说

self.result["text"]= str(float((self.var1.get())) +(float(self.var2.get())))

TypeError: 'NoneType' object does not support item assignment
非常常见的问题

如果你这样做

self.result = Label(...).grid()
因为
grid()
/
pack()
/
place()
返回
None

所以你有了
self.result=None
,然后你就有了问题

你必须分两行来做

self.result = Label(...)
self.result.grid()

请查看并编辑您的帖子。我看不出有问题,你的帖子的主体完全是代码。您提到了一条错误消息。这是怎么一回事?包括完整的回溯。使用按钮
{}
格式化SO上的代码。标题应简短。在正文中提出问题,而不仅仅是在标题中。
'NoneType'
意味着您在某个变量中得到
None
,因此您必须检查所有变量,以找出哪个变量给出
None