返回 self.tk.call(self._w, 'cget', '-' + key) TypeError: 只能将 str (不是“int”)连接到 str

问题描述 投票:0回答:2

我正在制作一个程序,用 GUI 计算你在不同行星上的体重。这是代码。当我输入 int 重量和 Str 行星时,我在控制台中收到此错误: return self.tk.call (self._w, 'cget', '-' + key) 类型错误:只能将 str (不是“int”)连接到 str

from tkinter import *

def calcular():
    mars = (peso.get()*3.7)/9.8

  
    if "Marte" in planeta:
        res.set("Tu peso en el planeta " + str(planeta.get()) + " es: " + str(mars))
        


        

ventana = Tk()
#StringVar , IntVar, DoubleVar
peso = IntVar()
planeta = StringVar()
res = StringVar()
ventana.geometry("400x300")




#Etiqueta
textoN = Label(ventana,text="Escribe un numero: ")
textoN.place(x=150,y=10)

#Caja de texto
pesoentry = Entry(ventana,textvariable=peso)
pesoentry.place(x=150,y=40)

planeta = Entry(ventana,textvariable=planeta)
planeta.place(x=150,y=60)

#Etiqueta Resultado
textoR = Label(ventana,textvariable=res)
textoR.place(x=150,y=140)

#Boton
boton = Button(ventana,text="Calcular",command=calcular,bg="#006",fg="white")
boton.place(x=180,y=100)
ventana.mainloop()
python-3.x tkinter
2个回答
1
投票

这应该有效:

def calcular():
    mars = (peso.get()*3.7)/9.8

    if "Marte" in planeta.get():
        res.set("Tu peso en el planeta " + str(planeta.get()) + " es: " + str(mars))

我更改的行:

if "Marte" in planeta.get():

0
投票

说实话,我没看懂

© www.soinside.com 2019 - 2024. All rights reserved.