[Aprendizagem Python] — Orientado a Objetos (9)

[Aprendizagem Python] — Orientado a Objetos (9)

1. Primeiro contato com objetos

Insira a descrição da imagem aqui
Insira a descrição da imagem aqui
Insira a descrição da imagem aqui
Insira a descrição da imagem aqui
Uma classe pode não apenas definir atributos para registrar dados, mas também definir funções para registrar comportamentos.Os atributos (variáveis) definidos na classe são chamados de variáveis ​​de membro, e os comportamentos (funções) definidos na classe são chamados de métodos de membro.

Sintaxe de definição de método de membro

Insira a descrição da imagem aqui
Insira a descrição da imagem aqui

O papel de si mesmo

  • Representa o significado do próprio objeto
  • Somente por meio de self, os métodos membros podem acessar variáveis ​​​​membro da classe
  • self aparece na lista formal de parâmetros, mas não ocupa a posição de parâmetro e não requer reuniões regulares
class Student:
      name=None

      def say_hi(self):
          print(f"大家好,我是{self.name},欢迎大家多多关照")

stu=Student()
stu.name="张三"
stu.say_hi()

2. Crie objetos baseados em classes

Insira a descrição da imagem aqui

class Clock:
    id=None
    price=None

    def ring(self):
        import winsound
        winsound.Beep(2000, 3000)



clock1=Clock()
clock1.id='1112'
clock1.price=233
print(f"闹钟ID:{clock1.id},价格{clock1.price}")
clock1.ring()

clock2=Clock()
clock2.id='21122'
clock2.price=99.00
print(f"闹钟ID:{clock2.id},价格{clock2.price}")
clock2.ring()

3. Método de construção

As classes Python podem usar:_init_()métodos, chamados métodos construtores

pode ser realizado:

  • Ao criar um objeto de classe (construir uma classe), ele será executado automaticamente
  • Ao criar um objeto de classe (construir uma classe), os parâmetros recebidos são passados ​​automaticamente para o_init_ método para uso
class Student:
    name = None
    age=None
    tel=None

    def __init__(self,name,age,tel):
        self.name=name
        self.age=age
        self.tel=tel
        print("student类创建了一个对象")

stu=Student("Cai",20,'13222222222')
print(stu.name)
print(stu.age)
print(stu.tel)

Notas sobre métodos de construção

Insira a descrição da imagem aqui
Insira a descrição da imagem aqui

4. Métodos integrados

__init__O método construtor é um dos métodos integrados daPython classe. Cada um desses métodos de classe integrados tem sua própria função especial. Esses métodos integrados são chamados de métodos mágicos


Insira a descrição da imagem aqui

class Student:
    def __init__(self,name,age):
        self.name=name
        self.age=age

    def __lt__(self,other):
        return self.age<other.age
stu1=Student("张三",20)
stu2=Student("李四",17)

print(stu1<stu2)
print(stu1>stu2)

Insira a descrição da imagem aqui

Insira a descrição da imagem aqui

class Student:
    def __init__(self,name,age):
        self.name=name
        self.age=age

    def __le__(self,other):
        return self.age <= other.age
stu1=Student("张三",20)
stu2=Student("李四",20)

print(stu1<=stu2)#True
print(stu1>=stu2)#True

class Student:
    def __init__(self,name,age):
        self.name=name
        self.age=age

    def __eq__(self,other):
        return self.age == other.age
stu1=Student("张三",20)
stu2=Student("李四",20)

print(stu1==stu2)#True

Resumir

Insira a descrição da imagem aqui

5. Embalagem

Três características principais da orientação a objetos: herança, encapsulamento, polimorfismo

encapsulamento

Insira a descrição da imagem aqui
membro privado

Membros privados não podem ser usados ​​por objetos de classe, mas podem ser usados ​​por outros membros
Insira a descrição da imagem aqui

Insira a descrição da imagem aqui

herdar

Insira a descrição da imagem aqui
Insira a descrição da imagem aqui

class 类名(父类名):
  内容体

Insira a descrição da imagem aqui

passar palavra-chave

Pass é um espaço reservado comum, que garante a integridade da função ou definição de classe e significa sem conteúdo ou vazio.

cópia de

Redefinir uma propriedade ou método com o mesmo nome em uma subclasse

Insira a descrição da imagem aqui

6. Sintaxe de anotação de tipo

Insira a descrição da imagem aqui
Insira a descrição da imagem aqui

var_1: int=10
var_2: str="caicai"
var_3: bool=True

class Student:
    pass
stu:Student=Student()

my_list:list=[1,2,3]
my_tuple:tuple=(1,2,3)
my_dict:dict={
    
    "caicai":123}


my_list:list[int]=[1,23,3]
my_tuple:tuple[int,str,bool]=(1,"cai",True)

Insira a descrição da imagem aqui
Insira a descrição da imagem aqui

anotação de tipo de função

Insira a descrição da imagem aqui

7. Polimorfismo

Polimorfismo refere-se a: múltiplos estados, ou seja, ao completar um determinado comportamento, o uso de objetos diferentes resultará em estados diferentes.

Insira a descrição da imagem aqui
Insira a descrição da imagem aqui

Acho que você gosta

Origin blog.csdn.net/m0_46374969/article/details/134111510
Recomendado
Clasificación