Mam formułę, którą muszę zmienić określoną figurę na podstawie którego z przycisku radiowego jest wybrany w momencie wykonania formuły.
Przyciski są następujące: -
radioframe = Frame(window)
glthick = DoubleVar()
radio_1 = Radiobutton(radioframe,text='12mm',\
variable = glthick,value=86.67)
radio_2 = Radiobutton(radioframe,text='15mm',\
variable = glthick,value=191.19)
radio_1.select()
Moim zrozumieniem jest to, że tego, który jest wybrany przycisk, zastosuje wartość odpowiadającą do zmiennej "Glushick"?
Następnie próbuję przekonwertować tę liczbę na numer zmiennokładowy do stosowania na następującym równaniu, nie próbuj czytać równania, matematyka jest dźwięk.
def formulaexecute():
val1 = (entry1.get())
val2 = (entry2.get())
glthickval = float(glthick)
try:
floatval1 = float(val1)
floatval2 = float(val2)
except ValueError:
message = "The numbers you have entered are not valid numbers"
print("Error!", message)
box.showerror("Invalid Input", message)
floatval1 = float(val1)
floatval2 = float(val2)
bevel = (((floatval1/100)*2)+((floatval2/100)*2))*3.5
formula12 = (((((((floatval1/100)*(floatval2)/100))*glthickval)+bevel+44)*2.4)*1.1)
glprice12 = formula12 + bevel
showprice12 = str(glprice12)[:4]
box.showinfo('Final Calculation',('Your table is:+entry1.get()+'x'+en
Widzisz po Formule12 = próba korzystania z wartości pływakowej z przycisku radiowego w Glithickval, wersja przeliczonej pływakowej wartości przycisku radiowego.
Zwracany błąd jest "Float () Argument musi być ciągiem lub liczbą", wiem, że wiele osób dostaje te z powodu nieprawidłowo posiadających wartości, które nie mogą być wprowadzane, ale wiem w tym przypadku, że nie. więc jestem ze stratą.
Błąd opisuje specyficznie Glithickval = Float (Glushick) jako linię powodując problemy, ale działa dobrze dla każdej innej wersji.
Może jego ślepo proste, ale pomoc byłaby bardzo doceniana.
Rozwiązanie:-
glthickval = (glthick.get())
glthickvalfloat = float(glthickval)
Rodzaj, Lewis
2 odpowiedzi
glthick
to obiekt, a nie numer, więc musisz użyć .get()
, aby uzyskać wartość:
glthickval = glthick.get()
Znalazłem problem, kwestia polegała na tym, że przycisk radiowy przypisuje zmienną liczbę na podstawie jego wyboru, ale wymaga funkcji połączenia, aby wyciągnąć to dowiedzieć się, a następnie przypisuj ją jako figura pływakowa do stosowania w następującym wzorze. Zajęło mi trochę czasu, ale mam to, miejmy nadzieję, że ktoś inny próbuje to przeczytać. Edytowałem oryginalny post, aby pokazać skorygowany blok kodu.
Podobne pytania
Nowe pytania
python
Python to wielozadaniowy, wielozadaniowy język programowania dynamicznie typowany. Został zaprojektowany tak, aby był szybki do nauczenia się, zrozumienia i użycia oraz wymuszania czystej i jednolitej składni. Należy pamiętać, że Python 2 oficjalnie nie jest obsługiwany od 01-01-2020. Mimo to, w przypadku pytań Pythona specyficznych dla wersji, dodaj znacznik [python-2.7] lub [python-3.x]. Korzystając z wariantu Pythona (np. Jython, PyPy) lub biblioteki (np. Pandas i NumPy), należy umieścić go w tagach.