print ("What is/was your original purchase price?")
x = input
valx=float(x)

print ("Amount of original purchase: ${}"
   .format(valx))
print ("State sales tax on original purchase: ${}"
   .format(valx*.04))
print ("County sales tax on original purchase: ${}"
   .format(valx*.02))
print ("Total sales tax (county and state): ${}"
   .format(valx*.06))
print ("Total of the sale (original purchase and total sales tax): ${}"
   .format(valx*.06))

Ma dla mnie sens i użyłem tej metody w przeszłości, jednak nie działa teraz.

Output error: line 9, in <module>builtins.TypeError: float() argument must be a string or a number

Zasadniczo moim celem jest wykazanie kwoty pierwotnego zakupu, kwota państwowego podatku od sprzedaży (4%) w pierwotnym zakupie, kwota pierwotnego zakupu podatku od sprzedaży hrabstwa (2%), całkowity podatek od sprzedaży (podatek hrabstwa) Plus podatek państwowy) oraz ostateczna suma sprzedaży (która jest sumą kwoty pierwotnego zakupu plus całkowity podatek od sprzedaży).

1
user1693293 24 wrzesień 2012, 07:03

4 odpowiedzi

Najlepsza odpowiedź

Sposób pobierania wejścia z linii poleceń byłoby to:

valx=float(input("What is/was your original purchase price?"))

input jest ciągiem i konwertujesz go na pływak, owijając to połączenie. Następnie nie potrzebujesz dodatkowej zmiennej.

0
Makoto 24 wrzesień 2012, 03:08

Przypisujesz funkcję do zmiennej x

x = input
>> x
<built-in function input>

Więc nie podajesz float() funkcji ciąg lub numer, ale funkcja.

Myślę, co próbujesz zrobić, to call funkcja input(). Możesz także zintegrować swoją wiadomość.

x = input ("What is/was your original purchase price?")

Lub jeśli używasz Python 3 lub więcej, musisz przekonwertować dane wejściowe z , aby płynąć (lub całkowitą lub dowolne żądane.):

x = float(input("What is/was your original purchase price?"))
3
Aesthete 24 wrzesień 2012, 03:06

Przypuszczalnie istnieje 6 linii powyżej, że myślałeś, że nie trzeba widzieć. Sprawia, że mówi o linii 9 nieco bezużyteczna.

Z pewnością masz na myśli Call Funkcja wejścia

x = input()
0
John La Rooy 24 wrzesień 2012, 03:06

Ze względów bezpieczeństwa należy użyć raw_input() zamiast input(). Ten ostatni jest taki sam jak eval(raw_input(prompt)) i eval nie jest daleko od zła :)

0
Dr. Jan-Philip Gehrcke 24 wrzesień 2012, 09:11