class student:
name = None,
sex = None
def student_add(self,name1,sex1):
self.name = name1
self.sex = sex1
def student_print(self):
print(f"name={self.name}\nsex={self.sex}")
def student_dd(self):
print(f"ssssss")
stu = student()
stu.student_add(1,2)
stu.student_print()
stu.student_dd()
class student:
name = None,
sex = None
def __init__(self,name1,sex1):
self.name = name1
self.sex = sex1
def student_print(self):
print(f"name={self.name}\nsex={self.sex}")
def student_dd(self):
print(f"ssssss")
stu = student(1,"男")
stu.student_print()
stu.student_dd()
注意: 首先 一旦写了 魔术方法,在类外的使用是 它对应的运算都可以使用。
注意:__str__ 输出的是字符串, 不写他,print 输出的是 变量的地址.
class student:
name = None,
sex = None
def __init__(self,name1,sex1):
self.name = name1
self.sex = sex1
def __str__(self):
return f"name={self.name}\nsex={self.sex}"
def __lt__(self,other): #小于号运算 , student 变量直接的运算
return self.name < other.name
def __le__(self,other): #小于等于, student 变量之间的运算
return self.name <= other.name
def __eq__(self,other): # == 符号的运算
return self.name == other.name
stu1 = student(1,"男")
stu2 = student(2,"女")
print(stu1) # 假如没有 写 def __str__ 返回的是 这个变量的地址,写了就是返回你写的东西
print(f"stu1stu2的结果是{stu1>stu2}") # 从结果可以 得出 只有写了对应符号的 魔术方法就可以使用对应的运算 (而不是单一的)
print(f"stu1<=stu2的结果是{stu1<=stu2}")
print(f"stu1>=stu2的结果是{stu1>=stu2}")
print(f"stu1==stu2的结果是{stu1==stu2}")
5.1 封装
5.2 继承
5.3 多态
5.4 面对对象编程的定义
答:面对对象编程是许多编程语言都支持的一种编程思想,简单理解是:基于模板(类)去创建实体(对象),使用对象完成功能开发。
class student:
__name = None, #私有成员 私有函数都不可以让类外的变量调用
sex = None
def __init__(self,name1,sex1):
self.__name =name1
self.sex=sex1
def mm(self):
print(f"name={self.__name}")
print(f"sex={self.sex}")
stu = student(1,2)
print(stu.sex)
stu.mm()
参考链接:Python pass 语句 | 菜鸟教程 (runoob.com)
子类和父类同名的变量, 想改变 变量的值,就使用复写。
#对形参进行类型注解
def add(x: int,y: int):
return x + y
#对返回值进行类型注解
def func(data: list) -> list:
return data
答: Union 类型是 一个列表有两种及以上 不同的元素。(元素是无序的)
比如说 list1 = [1,2,"list"}
class Animal: #创建对象类
def speak(self):
pass #跳过, 假如不写就会报错
class Dog(Animal): #创建Dog 类
def speak(self):
print("汪汪")
class Cat(Animal): #创建 Cat 类
def speak(self):
print("喵喵")
#创建多态函数
def make_noise(x : Animal):
x.speak()
dog = Dog()
cat = Cat()
make_noise(dog)
make_noise(cat)