In Objektorientierte Programmierung (OOP) Sprachen wie Python, sind Klassen und Objekte ein integraler Bestandteil davon, wie Daten dargestellt . Eine der grundlegenden Lehren der OOP ist die Integrität der Daten und zur Datensicherheit. Dies ist sehr wichtig für eine Sprache wie Python , die in einer Vielzahl von Software auf und neben dem Web vorhanden ist. Ein Weg, um Datenintegrität zu gewährleisten ist die Steuerung wie Objektdaten mit Benutzern interagiert . Die " property () "-Funktion in Python genau das tut. Klassen und Objekte in Python  
 Weil Python ist eine objektorientierte Sprache , können Python-Programmierer spezielle Arten von Datentypen durch die Schaffung erstellen " -Klassen. " Klassen sind Baupläne , die die interne Struktur und das Verhalten eines Objekts zu definieren. Nach dem Schreiben einer Klasse kann ein Programmierer " instanziieren " (oder eine Instanz ) eines Objekts. Das folgende Beispiel zeigt eine grundlegende Klasse und eine Instanziierung eines Objekts der Klasse 
 
 >>> class Basic: . //Class name 
 
 . . . def __ init__ ( self): //Initialisierung Funktion implizit aufgerufen , wenn das Objekt 
 
 instanziiert wird . . . self.x = 4 //lokale Daten Mitglied 
 
 . . . def write () : //Mitglied Verfahren 
 
 . . . print " Hallo " 
 
 >>> f = Standard () //f stellt nun ein "Basic" Objekt 
 Schützen von Daten 
 
 Jedes Objekt aus der "Basic" -Klasse erstellt wird enthält ein Datenelement "x " , das die ganze Zahl 4 enthalten wird. Ein Programmierer arbeitet mit einem Basic-Objekt kann auf die Daten in x mit dem " . " Betreiber , wie in diesem Beispiel : 
 
 >>> fx 
 
 4 
 
 Allerdings kann der Benutzer diesen Wert jederzeit ändern , genau wie bei jedem anderen Variable. Dies ist möglicherweise nicht in allen Fällen erwünscht , eine Klasse , könnten wichtige Daten, die Benutzer nicht ändern sollte . In diesem Fall müssen Daten Mitglieder in Python eine Namenskonvention der Inbetriebnahme zwei Unterstriche vor dem Mitgliedsnamen um einen Benutzer ändern es zu verhindern : 
 
 >>> class Basic: 
 < p> . . . def __ init__ (Selbst-) 
 
 . . . self.__x = 4 //private Daten Mitglied 
 Getter und Setter 
 
 Dieses Verstecken von Daten vor dem Zugriff wird manchmal als " Verkapselung ". Daten aus Benutzer Zugriff verborgen erfordern möglicherweise gelegentlichen Manipulation , als in Fällen, in denen ein Benutzer der Klasse Informationen ändern können , aber nur innerhalb bestimmter Parameter . In diesem Fall weist der Programmierer " Getter " und " Setter ", die den Wert zurück und setzen Sie den Wert auf. Getter einfach einen Wert zurückgeben und Setter ändern Sie den Wert , während die Integrität der Daten . Das folgende Beispiel zeigt Probe get-und set -Funktionen in einem Python-Klasse : 
 
 >>> class Basic: 
 
 . . . def __ init__ (SEF ): 
 
 . . . self.__x = 4 
 
 . . . def getX ( self): 
 
 . . . zurück self.__x 
 
 . . . def setX (self, NEWX ): 
 
 . . . wenn NEWX > = 0: 
 
 . . . Selbst. __x = NEWX 
 Die " property () " Methode 
 
 Einige Nutzer halten es unhandlich für die Nutzer zu haben , um die " f.getx ()" zugreifen Methode für jede beispielsweise werden die Daten erforderlich . Die " f.x " Syntax ist in der Regel bequemer. Das "Eigentum" Methode macht genau dies : Es ermöglicht dem Programmierer, die get-und set -Methoden ( zusammen mit anderen ) zu definieren und zu binden , um einfache Syntax . Unter der Basic-Klasse als Beispiel , wird das "Eigentum" Verfahren vereinfachen Benutzer Zugriff auf Basisdaten: 
 
 . . . def holex ( self): 
 
 . . . zurück self.__x 
 
 . . . def setx (self, NEWX ): 
 
 . . . wenn NEWX > = 0: 
 
 . . . self.__x = NEWX 
 
 . . . Eigenschaft ( bekommt , setx ) //Jetzt können Benutzer erhalten die __ x Wert mit fx, und setzen Sie ihn mit fx = i