Python фунт в килограмм - PullRequest
0 голосов
/ 03 февраля 2020

Мне нужна помощь, чтобы отобразить «невозможно конвертировать негативы» в tkinter.
Я хочу сказать, что «я не могу конвертировать негативы», когда я набираю отрицательное число.

Код:

from tkinter import *

def convert():

    P = float(pound.get())
    K = P * 0.453592
    Kilogram.set(str(K))

    input (P)
    if (P) < 0:
        print("cannot convert negitaves") # i need to display this when i run the program 
    else:
        K = P * 0.453592
        print(K)

my_window = Tk()
Kilogram = StringVar()
pound = StringVar()

label_1 = Label(my_window, text="Enter the pound")
label_2 = Label(my_window, text="Kilogram")
display_kilogram_label = Label(my_window, textvariable=Kilogram)
pound_entry = Entry(my_window, textvariable=pound)
convert_button = Button(my_window, text="Convert", command=convert)

label_1.grid(row=0, column=0)
pound_entry.grid(row=0, column=1)
label_2.grid(row=1, column=0)
display_kilogram_label.grid(row=1, column=1)
convert_button.grid(row=2, column=0)

my_window.mainloop()

Ответы [ 2 ]

0 голосов
/ 03 февраля 2020

Простое комментирование строки input(P) - это то, что вам нужно для запуска вашей программы.

from tkinter import *

def convert():

    P = float(pound.get())
    K = P * 0.453592
    Kilogram.set(str(K))

    if (P) < 0:
        print("cannot convert negitaves") # i need to display this when i run the program 
    else:
        K = P * 0.453592
        print(K)

my_window = Tk()
Kilogram = StringVar()
pound = StringVar()

label_1 = Label(my_window, text="Enter the pound")
label_2 = Label(my_window, text="Kilogram")
display_kilogram_label = Label(my_window, textvariable=Kilogram)
pound_entry = Entry(my_window, textvariable=pound)
convert_button = Button(my_window, text="Convert", command=convert)

label_1.grid(row=0, column=0)
pound_entry.grid(row=0, column=1)
label_2.grid(row=1, column=0)
display_kilogram_label.grid(row=1, column=1)
convert_button.grid(row=2, column=0)

my_window.mainloop()
0 голосов
/ 03 февраля 2020

Я закомментировал строку «input (P)» и немного реорганизовал вашу функцию конвертации, теперь она работает:

def convert():
    P = float(pound.get())

    # input (P)
    if P < 0:
        print("cannot convert negitaves") # i need to display this when i run the program
    else:
        K = P * 0.453592
        Kilogram.set(str(K))
        print(K)

Исходя из ваших отзывов, я изменил функцию конвертации для отображения также сообщение об ошибке:

def convert():
    P = float(pound.get())

    if P < 0:
        Kilogram.set("Cannot convert negatives!")
    else:
        Kilogram.set(str(P * 0.453592))
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...