• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Tkinter Entry - problem z komunikatem ValueError: could not convert string to float: ''

Fiszki IT
Fiszki IT
0 głosów
32 wizyt
pytanie zadane 8 maja w Python przez Anahan89 Obywatel (1,240 p.)

Hej,

mam taki oto problem z moim pseudo programikiem okienkowym. Chciałbym aby po wpisaniu wartości liczbowej wyświetlił mi się on jako nowy wynik w oknie programu, niestety wyskakuje mi błąd:     c = float(pod_dane.get())
ValueError: could not convert string to float: ''

 

Tutaj kod:

import tkinter


window = tkinter.Tk()
#wymiary okienka
window.geometry("300x300")
#nazwa programu
window.title("BonusCalc")

podstawa = tkinter.Label(window, text = "Test1", font=10, fg='black')
pod_dane = tkinter.Entry(window, text="")
c = float(pod_dane.get())
wynik = tkinter.Label(window, text = "123", font=10, fg='black')
button = tkinter.Button(window, text = "Oblicz wypłatę", font=15, width = 15, command = wynik1)

def wynik1(c):
    d=c
    wynik.configure(text = f"Twoje nowe dane to:  {d} ")
    

podstawa.grid(column=0, row=1)
pod_dane.grid(column=2, row=1)
button.grid(column=0,row=3)
wynik.grid(column=0,row=4)

window.mainloop()

Co powinienem zrobić żeby to zadziałało?

1 odpowiedź

+1 głos
odpowiedź 8 maja przez Nelson89 Mądrala (5,520 p.)
wybrane 8 maja przez Anahan89
 
Najlepsza

Cześć,

problem polega na tym, że próbujesz przekonwertować pusty ciąg znaków na typ float. Obiekt tkinter.Entry domyślnie jest pusty - jego zawartość to "". Musisz utworzyć ustalić domyślną liczbową wartość wartość. Do tego musisz wykorzystać typ tkinter.StringVar.

wartosc_dane = tkinter.StringVar()
wartosc_dane = tkinter.set("0")
pod_dane = tkinter.Entry(window, text="", textvariable=wartosc_dane)

I w zasadzie aby wyciągnąć zawartość Entry będziesz mógł użyć:

wartosc = wartosc_dane.get()

lub

wartosc = pod_dane.get()

Pozdrawiam,

Nelson

komentarz 8 maja przez Anahan89 Obywatel (1,240 p.)
Wszystko jasne! Dziękuję :)

Podobne pytania

0 głosów
1 odpowiedź 816 wizyt
pytanie zadane 7 marca 2020 w Python przez edwardkraweznik Dyskutant (9,560 p.)
0 głosów
1 odpowiedź 99 wizyt
pytanie zadane 1 stycznia w Python przez Hacker4300.exe Użytkownik (650 p.)
0 głosów
0 odpowiedzi 317 wizyt
pytanie zadane 29 sierpnia 2019 w Python przez Wiktor Michalski Początkujący (430 p.)
Porady nie od parady
Zadając pytanie postaraj się o szczegółowe opisanie problemu oraz udostępnienie wszystkich istotnych informacji (kody źródłowe, zrzuty ekranu itp.).Opisanie problemu

84,720 zapytań

133,524 odpowiedzi

295,917 komentarzy

55,996 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto dwie polecane książki warte uwagi. Pełną listę znajdziesz tutaj.

...