Seite 1 von 1
Problem mit Variablen
Verfasst: Donnerstag 17. September 2015, 18:06
von stone97
Hey Community
Ich habe vor kurzen angefangen Phyton zu erlernen jedoch bin ich auf ein Problem gestoßen wo ich nicht weiter komme.
jedes mal wenn ich das "programm starten möchte kommt der fehler (Syntax Error: cant assign to operator)
s = 0.18
b * s = g
print ("Bitte geben sie ihr Brutto gehalt ein")
input () = b
print(b)
print(g)
bei b * s = g erscheint dann ein roter Balken.
Re: Problem mit Variablen
Verfasst: Donnerstag 17. September 2015, 18:40
von /me
Bei einer Zuweisung muss das Ziel auf der linken Seite stehen. Das sieht man im Tutorial ziemlich früh (
https://docs.python.org/3/tutorial/intr ... ml#numbers).
Re: Problem mit Variablen
Verfasst: Donnerstag 17. September 2015, 18:43
von stone97
danke doch jetzt kommt das b nicht defeniert ist.
Re: Problem mit Variablen
Verfasst: Donnerstag 17. September 2015, 19:00
von /me
stone97 hat geschrieben:danke doch jetzt kommt das b nicht defeniert ist.
Code wird der Reihe nach von oben nach unten abgearbeitet. Woher soll
b an der Stelle denn kommen?
Darf ich mal fragen, welches Buch/Tutorial du zum Lernen verwendest?
Re: Problem mit Variablen
Verfasst: Donnerstag 17. September 2015, 19:10
von stone97
Ich benutze Einstieg in Phyton Ausgabe 3 und das ist eine Übungsaufgabe die ich machen wollte.
habe jetzt alles so verbessert doch es kommt immer noch eine Fehlermeldung das g = s * b nicht stimmt.
s = 0.18
print ("Bitte geben sie ihr Brutto gehalt ein")
b = input()
g = s * b
print(b)
print(g)
Könntest du mir gegebenenfalls ein anderes Buch empfehlen?
Re: Problem mit Variablen
Verfasst: Donnerstag 17. September 2015, 19:24
von Sirius3
@stone97: die Fehlermeldung sagt Dir ja nicht, dass "g = s * b" nicht stimmt, sondern was daran falsch ist.
Re: Problem mit Variablen
Verfasst: Donnerstag 17. September 2015, 19:31
von /me
Es ist wichtig Fehlermeldungen genau zu lesen und sie bei Fragen auch exakt wiederzugeben. Ich vermute du bekommst Folgendes:
Code: Alles auswählen
TypeError: can't multiply sequence by non-int of type 'float'
Du möchtest da offensichtlich etwas miteinander multiplizieren was man nicht miteinander multiplizieren kann.
Code: Alles auswählen
>>> '18' * 0.2
Traceback (most recent call last):
File "<pyshell#11>", line 1, in <module>
'18' * 0.2
TypeError: can't multiply sequence by non-int of type 'float'
>>> '18' * 2
'1818'
>>> 18 * 2
36
input() liefert dir einen String zurück (zumindest unter Python 3, das du offensichtlich verwendest). Du musst den String erst in eine Zahl verwandeln um damit rechnen zu können.
Re: Problem mit Variablen
Verfasst: Donnerstag 17. September 2015, 19:31
von mutetella
@stone97
Eine Fehlermeldung ist ja eben auch eine Meldung, will heißen, dass in Deinem Fall "can't multiply sequence by non-int of type 'float'" auf die Lösung hinweist. Schau' Dir doch einfach mal die Datentypen an, die Du miteinander verarbeiten möchtest:
Code: Alles auswählen
>>> s = 0.18
>>> b = input()
3500
>>> type(s)
<class 'float'>
>>> type(b)
<class 'str'>
mutetella
Re: Problem mit Variablen
Verfasst: Donnerstag 17. September 2015, 19:33
von stone97
Vielen Dank , Problem ist gelöst ich hatte schon so viel durchprobiert da ich schon halb resigniert hatte.
Wie man immer so schön sagt "Wer lesen kann ist klar im Vorteil" das war jetzt der Fall , also beim 3. Problem was ich hatte.
Danke an /me, Sirius3 und mutella für die schnelle Hilfe und für die Bereitschaft ein solchen blutigen Ahnungslosen Anfänger wie mir unter die Arme zu greifen.
Re: Problem mit Variablen
Verfasst: Donnerstag 17. September 2015, 23:01
von cofi
Ein wichtiger Hinweis noch: Learning by Doing ist total in Ordnung. Ich habe aber das Gefuehl, dass das dein erster Schritt ist und du eher herumraetst wie etwas zu lauten hat und was es bedeutet.
Der Ansatz wird dich auf kurz oder lang frustrieren, auch wenn wir hier gerne helfen. Darum schlage ich vor du arbeitest dich durch die ersten paar Kapitel (bis 7 sollte fuers erste reichen) des Tutorials und gehst erst dann wieder Uebungsaufgaben durch.
Re: Problem mit Variablen
Verfasst: Freitag 18. September 2015, 05:16
von stone97
Die tutorials auf der website von Phyton?
Re: Problem mit Variablen
Verfasst: Freitag 18. September 2015, 05:19
von cofi
Genau das meine ich. Oder, da du Python 3 benutzt, eben die Uebersetzung aus meiner Signatur.
Re: Problem mit Variablen
Verfasst: Freitag 18. September 2015, 05:22
von stone97
Okay danke dann werde ich diese Kapitel mal durcharbeiten. Mit der frustration hast du komolett recht.
Re: Problem mit Variablen
Verfasst: Freitag 18. September 2015, 09:50
von Karl der Große
s = 0.18
b = input("Bitte geben sie ihr Brutto gehalt ein: ")
g = s * b
print(b)
print(g)
Das Ziel muss auf der linken Seite stehen. Und du musst bestätigen, dass du Python 3 verwenden. Es gibt mehrere Unterschiede zwischen Python 2 und 3.
Re: Problem mit Variablen
Verfasst: Freitag 18. September 2015, 12:57
von /me
Karl der Große hat geschrieben:s = 0.18
b = input("Bitte geben sie ihr Brutto gehalt ein: ")
g = s * b
Es ist schön, dass du als neuer User direkt etwas beitragen möchtest. Bitte verwende aber in Zukunft die passende Formatierung für Code.
Das was du versuchst zu erklären wurde allerdings bereits erklärt. Zudem ist dein Code falsch für Python3 (und gefährlich in Python 2). Lass ihn selber laufen und du wirst es feststellen.
Re: Problem mit Variablen
Verfasst: Freitag 18. September 2015, 13:51
von Karl der Große
/me hat geschrieben:Karl der Große hat geschrieben:s = 0.18
b = input("Bitte geben sie ihr Brutto gehalt ein: ")
g = s * b
Es ist schön, dass du als neuer User direkt etwas beitragen möchtest. Bitte verwende aber in Zukunft die passende Formatierung für Code.
Das was du versuchst zu erklären wurde allerdings bereits erklärt. Zudem ist dein Code falsch für Python3 (und gefährlich in Python 2). Lass ihn selber laufen und du wirst es feststellen.
OK, mein Fehler. I werde es korrigieren.
Was richtig ist:
b = float(input("Bitte geben sie ihr Brutto gehalt ein: "))