Как сделать так, чтобы моя переменная имела значение по умолчанию "0", если пользователь не предоставил ввод в python? - PullRequest
0 голосов
/ 25 ноября 2018

Вот мой код.Я хочу, чтобы моя переменная "a" содержала значение по умолчанию 0 всякий раз, когда пользователь не указал какое-либо конкретное значение.Я дал мой код ниже:

 from tkinter import *
    from tkinter  import messagebox

    def sample(): 
        a= show_values1()
        v= int(a)+10
        print (v)

    def show_values1(event=None):
        global a
        a= i1.get()
        print(a)
        if int(a) > ul or int(a) < ll :
            print('Limit Exceed')
            messagebox.showerror("Error", "Please enter values from -100 to 100")

        else :

           return a

    root= Tk()
    ul= 100
    ll=-100
    i1 = inputBox = Entry()
    i1.place(x=70, y=48, height=20)
    bu1=Button(text='Enter', command = show_values1)
    bu1.place(x = 70, y = 28, width=40, height=20)


    bu2=Button(text='SEND', command = sample)
    bu2.bind('<Return>', lambda x: show_values1(event=None))
    bu2.place(x = 70, y = 98, width=40, height=20)

    root.mainloop()

Ответы [ 2 ]

0 голосов
/ 25 ноября 2018

Поскольку li.get () возвращает строку.Ничего не введено, будет строка нулевой длины.Вы можете проверить это, а затем установить на ноль.Например, после выражения a = i1.get () вставьте:

    if len(a) == 0:
        a = "0"

Возможно, вам также потребуется обработать случаи, когда get () возвращает значения, которые не могут быть преобразованы в тип int.: -)

0 голосов
/ 25 ноября 2018

Если значение не было введено, i1.get() будет иметь значение пустой строки "", так что вы можете просто проверить это внутри showvalues1:

if a == "":
    return 0
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...