Seite 1 von 1

Variable mit Variable verrechen (Code-Fenster)

Verfasst: Dienstag 22. Oktober 2019, 17:09
von Lungee
Moin miteinander,

habe eine Frage zum Thema 'mit Variablen rechnen'.

Code ist folgendermaßen:

Code: Alles auswählen

b = 869,54
a= 0,75

B = b-(b/a)
funktioniert als solches natürlich nur im Shell-Fenster. Im Code-Fenster bekomme ich den Fehler von wegen 'unsupported operand types....tuple and tuple...'

Wie kann ich das ändern?

Danke schon mal im Voraus

Re: Variable mit Variable verrechen (Code-Fenster)

Verfasst: Dienstag 22. Oktober 2019, 17:14
von __blackjack__
@Lungee: Was meinst Du mit „Shell-Fenster“? In Python funktioniert das nirgends denn da wird man ganz offensichtlich immer den `TypeError` bekommen weil man Tupel nicht durcheinander Teilen kann.

``869,54`` und ``0,75`` sind halt keine Zahlen sondern Tupel mit zwei Elementen die ganze Zahlen sind. Falls Du für `a` und `b` jeweils einen Dezimalbruch schreiben wolltest, solltest Du vielleicht noch mal in der Dokumentation nachschauen wie man das macht.

Code: Alles auswählen

In [2]: b = 869,54 
   ...: a= 0,75 
   ...:  
   ...: B = b-(b/a)                                                             
---------------------------------------------------------------------------
TypeError                                 Traceback (most recent call last)
<ipython-input-2-121f619845f4> in <module>
      2 a= 0,75
      3 
----> 4 B = b-(b/a)

TypeError: unsupported operand type(s) for /: 'tuple' and 'tuple'

In [3]: a                                                                       
Out[3]: (0, 75)

In [4]: b                                                                       
Out[4]: (869, 54)

In [5]: type(a)                                                                 
Out[5]: tuple

In [6]: a[0]                                                                    
Out[6]: 0

In [7]: a[1]                                                                    
Out[7]: 75

Re: Variable mit Variable verrechen (Code-Fenster)

Verfasst: Dienstag 22. Oktober 2019, 17:42
von Lungee
@ blackjack
Ich weiß wie man einen Dezimalbruch etc. schreibt. Ist aber auch relativ unwichtig, wegen mir kann da auch

Code: Alles auswählen

b = 10
a= 2

B = b-(b/a)
stehen.

Mit Shell-Fenster ist gemeint, dass, wenn du diesen Code one-by-one ins Shell-Fenster tippst, du am Ende mit print(B) das Ergebnis erhälst.

Und die Frage ist eben, wie kann ich die Variablen im Code-Fenster verrechnen.

MfG
Lungee

Re: Variable mit Variable verrechen (Code-Fenster)

Verfasst: Dienstag 22. Oktober 2019, 17:51
von __deets__
Das ist der Python-REPL oder einfach auch nur Python-Prompt. Hat mit Shell erstmal nichts zu tun. Da kann man den starten, das ist aber auch alles. Kann auch in deiner IDE sein.

Und ich kann deinen Code oben eintippen:

Code: Alles auswählen

>>> b = 10
>>> a=2
>>> B = b - (b/a)
>>> B
5.0
Was also hast du da genau fuer Probleme?

Re: Variable mit Variable verrechen (Code-Fenster)

Verfasst: Dienstag 22. Oktober 2019, 17:59
von __blackjack__
@Lungee: Wie kann das unwichtig sein wenn es doch einen `TypeError` zur Folge hat wenn man es falsch macht? Und das ist wie gesagt völlig egal *wo* man das so schreibt, das ist in Python grundsätzlich falsch.

Re: Variable mit Variable verrechen (Code-Fenster)

Verfasst: Dienstag 22. Oktober 2019, 18:03
von Lungee
@ deets
Also erstmal 'mein' Python IDLE ist unterteilt in SHELL-Fenster und CODE-Fenster. Ob man jetzt Python REPL etc. dazu sagt, macht keinen Unterschied.

Des Weiteren: Ja ich weiß, dass ich das Ergebnis bekomme, wenn ich das Ganze in Shell, REPL etc. eintippe. Auch klar.

Nochmal meine Frage. Wie kann ich es bewerkstelligen, dass ich den oben genannten Code im CODE-Fenster ausführe, ohne einen Fehler zu erhalten und das Ergebnis (5.0) im Shell-Fenster angezeigt zu bekommen.

Re: Variable mit Variable verrechen (Code-Fenster)

Verfasst: Dienstag 22. Oktober 2019, 18:09
von __blackjack__
@Lungee: Du musst das Ergebnis, also `B`, ausgeben. Mit `print()`.

Re: Variable mit Variable verrechen (Code-Fenster)

Verfasst: Dienstag 22. Oktober 2019, 18:15
von Lungee
Okay Leute,

hab die Lösung gefunden @blackjack hattest doch recht mit Dezimalbruch etc.

Stand wohl aufm Schlauch.

Trotzdem danke euch.

MfG
Lungee