Programmieren für Ingenieure

None

In dieser Lektion möchte ich mit dir über nichts reden. Um etwas genauer zu sein, darüber was es mit „None“ auf sich hat.

None ist ein Objekt in Python.
Sobald du zeigen möchtest, dass etwas leer ist oder keinen Wert hat, verweist du auf dieses eine None Objekt.
Variablen die auf None verweisen wird automatisch der Datentyp NoneType zugeordnet.

variable = None
print(variable)
print(type(variable))

### ERGEBNIS / AUSGABE ###
None
<class ‚NoneType‘>


Um herauszufinden was None nun eigentlich genau ist kannst du einige Tests machen:

if variable == True:
    print(„None ist True.“)
elif variable == False:
    print(„None ist False“)
elif variable == 0:
    print(„“)
elif variable == „“:
    print(„“)
elif variable is None:
    print(„None ist nur None“)
### ERGEBNIS / AUSGABE ###
None ist nur None

In der letzten Abfrage prüfst du mit dem „is“ Schlüsselwort ob es sich um das gleiche Objekt handelt.
Im Gegensatz dazu prüft „==“ ob die Objekte den gleichen Wert haben.

Immer wenn du also zeigen möchtest, dass eine Variable keinen Wert hat verweist du nicht einfach auf nichts, sondern auf das Python „nichts“ Objekt: None.

Du solltest auch wissen, dass None wirklich nur nichts ist, du also auch nicht damit rechnen oder es in irgendeiner anderen Form verarbeiten kannst.

print(1 + None)

### ERGEBNIS / AUSGABE ###
TypeError: unsupported operand type(s) for +: ‚int‘ and ‚NoneType‘

Um solche Fehler zu vermeiden ist es wichtig auf None zu prüfen, sobald die Gefahr besteht, dass einer der Werte, mit denen du arbeiten möchtest, leer ist.

Wichtig ist, dir zu merken, dass es bei Python ein einziges None Objekt gibt, und alle leeren Objekte auf dieses eine None Objekt verweisen.
Und, dass du daran denkst auf None zu prüfen, sobald die Gefahr besteht, dass dir eines dieser leeren Objekte einen Strich durch die Rechnung macht.
Wenn du Fragen hast oder Probleme in dieser Lektion hattest, dann zögere bitte nicht bei Google oder mir nachzufragen.
Ich gratuliere dir zum nächsten wichtigen Schritt und freue mich schon darauf dich gleich in der nächsten Lektion wiederzusehen =)

 

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert