View Single Post
Litt usikker på hva det er du mener jeg tar feil på. Greit nok at str*int er en stringoperasjon og ikke en matematisk operasjon, men det er syntaktisk kverulering. Jeg prøver bare å vise hva som skjer når resultatet av input()-funksjonen (som er en string) kjøres mot en float/int med en asterisk som operator, og at jeg bruker ordet "multiplisere" selv om det strengt tatt er en stringoperasjon må da være innafor. Alt annet jeg sier stemmer like fullt.

Dine eksempler vil derimot ikke fungere, noe en kjapp test viser:

Kode

>>> 100.0*input()
5
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
TypeError: can't multiply sequence by non-int of type 'float'
>>> 100*input()
5
'5555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555555'
Altså, som sagt:
str*int funker, str*float funker ikke. Men Python skjønner uansett ikke at parameteren som tas inn i input()-funksjonen er noe annet enn en string, og det er vel hele poenget som trådstarter snublet i.
Sist endret av Realist1; 2. februar 2018 kl. 23:09.