Los conceptos más importantes orientados a objetos es la clase (clase) y la instancia (instancia), clase abstracta es una plantilla, que se basa en la instancia de la clase creada a partir de un hormigón "objetos", cada objeto tiene los mismos métodos, pero cada los datos pueden ser diferentes. El código de ejemplo siguiente ilustra algunas clases de conocimientos básicos.
. 1 # / usr / bin / Python el env! 2 # - * - Codificación:. UTF-8 - * - 3. # @Date: 03/08/2020 . 4 # @author: Flyinghappy ([email protected]) . 5 # @link : https://www.cnblogs.com/flyinghappy/ . 6 # @Version: $ $ Id . 7 importación JSON . 8 importación OS . 9 10 clase de la persona: . 11 '' ' función, una primera clase de parámetros por defecto se define interior ' '' 12 es NUM = 0 # atributo de clase 13 es DEF la __init__ (Ser, name = '' , Edad = 20 es):# Manera especial al crear instancias de la clase del nombre, la edad y otros atributos que se unen a la instancia. 14 . Auto __name__ = nombre # variables de instancia de clase, delanteros '__' subrayados doble limitante externa acceso 15 self.age Edad = # variables de instancia de clase 16 self.talking_note = [] # instancia de clase variable de 17. DEF Talk (Ser, talk_something): # método de la clase 18 es self.talking_note.append (talk_something) 19. impresión (talk_something) 20 es DEF Guardar (Auto): # método de la clase 21 es el nombre de archivo = ' Persona ' + ' .json ' 22 es = Person_info [Ser. __Name__ , self.age, self.talking_note, person.num] 23 es con Open (nombre de archivo, ' W ' ) AS F: 24 El json.dump (person_info, F) 25 f.close () 26 es 27 IF la __name__ == ' __main__ ' : 28 persona = persona (name = ' flyinghappy ' , edad = 40) # declaran una instancia de clase de la persona, el nombre y la edad y inicializar los atributos del 29 '' ' tras el bucle while, con el num atributo de clase de persona '' ' 30 el mientras person.num <5. : 31 es nota = ' Soy el número: ' + str (person.num) 32 person.talk (nota) 33 person.num + = 1 34 otra cosa : 35 person.save ()
salida:
el contenido del almacenamiento de archivos Person.json son los siguientes:
#! / Usr / bin / env python # - * - coding: UTF-8 - * - # @Date: 08/03/2020 # @author: Flyinghappy ([email protected]) # @ link: https: // @version www.cnblogs.com/flyinghappy/#: importación jsonimport OS $ $ Id
clase de la persona: '' 'dentro de la función de definición de clase, el primer parámetro es el mismo defecto' '' num = 0 # atributos de clase def __init __ (self , name = '', edad = 20): # método especial, cuando se crea la instancia del nombre de la clase, edad y otros bienes está obligado a instancia. self .__ name = Nombre de instancia # clase de variables, delanteros '__' doble subrayado limitar el acceso externo self.age = la edad # variables de instancia de clase self.talking_note = [] charla variable de instancia # clase def (self, talk_something): # método de clase auto .talking_note.append (talk_something) de impresión (talk_something) def Guardar (self): # método de clase de nombre de archivo = 'persona' + person_info = [self .__ nombre, self.age, self.talking_note, person.num] con 'json'. abierto (nombre de archivo, 'w') como f: f.close json.dump (person_info, f) ()
Si __name__ == '__main__': persona = Persona (name = 'flyinghappy', edad = 40) # declaran una instancia de clase de la persona, nombre y edad e inicializar atributos '' 'tras el bucle while, con el num atributo de clase de persona' '' mientras person.num <5: nota = 'soy el número:' + str (person.num) person.talk (nota) person.num + = 1 cosa: person.save ()