[Python-de] Rätselhaftes String-Verhalten

Andreas Grytz agrytz at linux-user.de
Fre Sep 26 12:56:45 CEST 2003


On Fri, Sep 26, 2003 at 11:32:25AM +0200, Rene Liebscher wrote:
> On Fri, 26 Sep 2003, Andreas Grytz wrote:
> > Hallo zusammen,
> > 
> > wie immer mit den einfachen Sachen im Leben, man möchte schnell etwas
> > überprüfen und schwupps -- stößt man auf eine Sache, die immer
> > unerklärlicher wird. Folgendes bereitet mir Kopfzerbrechen:
> > 
> > >>> line = 001001001
> > >>> type(line)
> > <type 'int'>
> > >>> print line[0:2]
> > Traceback (innermost last):
> >   File "<stdin>", line 1, in ?
> > TypeError: unsliceable object
> > >>> line = str(001001001)
> 
> 001001001 wird als Oktalzahl interpretiert (=262657=
> ~
Vielen Dank für die Antworten. Ein paar gingen direkt an mich, sind
daher hier nicht zu sehen.

OK, das verstehe ich und konnte ich so nachvollziehen. Vielleicht noch
eine Anschlußfrage: Warum interpretiert er die Zeichenkette als
Oktalzahl? Bei dem Beispiel könnte es ja auch eine Binärzahl sein?

Gruss,
	Andreas
-- 
Andreas Grytz		| http://www.linuxnewmedia.de
Stefan-George-Ring 24	| Tel:	+49 (0) 89 993411-0
D-81929 München		| Fax:	+49 (0) 89 993411-99