[python-users] Fiese Falle
Daniela Knoll
daniela.knoll at gmx.de
Mo Jun 13 14:57:18 CEST 2016
Hallo zusammen,
da es sich bei "-1" und "-2" wegen den
Anführungszeichen eindeutig um Strings handelt,
sind die Antworten in Python2.7 und Python3.4 jeweils
die gleichen und meiner Meinung nach auch korrekt.
Denn im alphanumerischen
System kommt "-1" vor "-2".
Vielleicht 'mal in dem Zusammenhang diese Syntax hier:
>>> print(max("-1","-(-)2"))
-1
>>> print(max("-(+)1","-(-)2"))
-(-)2
=> Sonderzeichen < Zahlen und "-" > "+"
>>> print(max("-(-)2","-(-)1"))
-(-)2
>>> print(max("-(+)2000000","-(-)1"))
-(-)1
=> "-" > "+"
Oder habe ich was übersehen?
So was wäre natürlich auch noch möglich:
>>> print(max(int("-2"),-1))
-1
>>> print(max(int("-2"),-(int(-1))))
1
Grüße,
:Daniela
> Message: 3
> Date: Sun, 12 Jun 2016 23:14:17 +0200
> From: Michael Kesper <mkesper at schokokeks.org>
> To: python-users at uni-koeln.de
> Subject: Re: [python-users] Fiese Falle
> Message-ID: <575DD0A9.9000508 at schokokeks.org>
> Content-Type: text/plain; charset=utf-8; format=flowed
>
> Hallo Dirk, hallo zusammen,
>
> in der Tat:
>
> Python 2.7.9 / Python 3.4.2:
> >>> print(min("-1","-2"))
> -1
> >>> print(max("-1","-2"))
> -2
>
> Erwartet hätte ich eigentlich eine TypeError Exception.
>
> Viele Grüße
> Michael
Mehr Informationen über die Mailingliste python-users