Python-Programmierung: Sonstiges
Aus Wikibooks
Neben den Objekttypen des täglichen Programmiergeschäfts, treiben sich in Python noch ein paar eher exotische Exemplare herum, mit denen man selten, wenn nicht nie, konfrontiert wird und hier nur der Vollständigkeit halber aufgeführt werden.
[Bearbeiten] type Objekte
Objekte des Typs type werden von der eingebauten Funktion type als Rückgabewert geliefert und repräsentieren, den Type eines beliebigen Objekts:
>>> type(1234567890) <type 'int'> >>> type(1234567890L) <type 'long'> >>> type("ABC") <type 'str'> >>> type(1j) # 0+1i <type 'complex'> >>> type(lambda x: x*x) # Anonyme Funktion <type 'function'> >>> type([]) <type 'list'> >>> type(()) <type 'tuple'> >>> type({}) <type 'dict'> >>> type(type) <type 'type'> >>> type(True) <type 'bool'> >>> type(None) <type 'NoneType'> >>> import Tkinter >>> type(Tkinter) <type 'module'> >>> type(xrange(0)) <type 'xrange'> >>> type(set()) <type 'set'> >>> f = file("datei", "w") >>> type(f) <type 'file'> >>> f.close() >>> class A: ... pass ... >>> type(A) <type 'classobj'>
[Bearbeiten] xrange - Objekte
Die eingebaute Funktion xrange() vermeidet, im Gegensatz zur Funktion range(), eine, möglicherweise sehr große, Liste zu erzeugen. Statt dessen liefert sie ein XRange-Objekt, dass, z.B. in for ... in verwendet werden kann und bei jedem Durchlauf den nächsten Wert erzeugt. Diese Funktionalität wurde in Python 3 von range() übernommen und durch den generalisierten Iteratormechnismus ersetzt.