类 魔术方法

1. 类

创建类
# 形式:
class 类名:
# 如:
class Student:
	name = None
	age = None
实列化对象
# 形式:
对象=类名()
# 如:
stu_1=Student()
给对象赋值
形式:
# 对象.成员变量=要赋予的值
# 如:
stu_1.name="小明"
stu_1.age=18
打印出对象记录的数据
# 形式:
print(对象.要观察的成员变量)
# 注:不能直接print(对象) 因为此时对象记录的地址
# 如:
print(stu_1.name)
print(stu_1.age)

方法:

概念:就是定义在类内部的函数叫做方法

成员变量:

概念:就是定义在类内且不在函数内的变量叫做成员变量

self:

相当于this指针,用于控制对象本身,与this指针不同的是this指针是隐式显示的,而self是显式的显示的。
但是他们都是隐式的传入就是在调用时不用传入self。

什么是面向对象

面向编程就是使用对象编程,即设计类,基于类创建对象,再通过对象来完成具体工作

类的内置方法(魔术方法)

构造方法 init()

注:在创建类对象的时候会自动执行,如果有参数也会把参数一起传入

# 形式:
def __init__(self,id,price):
   self.id=id
   self.price=price

注:而其他语言不同的是,python的类中即使不写成员变量,也可以在构造方法时自动生成,如上列就生成了id与price两个成员变量.

字符串 str 可以控制对象转换成字符串得到行为 即就是将对象原本指向内存地址的行为,转变为指向对应的值,类似于java的toString方法。
# 形式:
def __str__(self):
	return 字符串
	
# 如:
def __str__(self):
	return f"学生的姓名:{self.name},学生的年龄:{self.age},学生的地址:{self.adder}" 
	
lt 比较两个对象的大小,因为直接比较的话是比较两个对象而不是对象里面的值,类似于C++中的重写
# 形式: 
def __lt__(self,other):
	return self.要比较的成员变量<other.要比较的成员变量
# 注:要比较的成员变量是一样的,只支持小于或者大于,不支持小于等于或者大于等于
# 如:
def __lt__(self, other):
	return self.age<other.age
le 比较两个对象的大小与 _lt 不同 他针对的是小于等于或者大于等于
# 形式: 
def __le__(self,other):
	return self.要比较的成员变量<=other.要比较的成员变量
# 注:要比较的成员变量是一样的
# 如:
def __le__(self, other):
	return self.age<=other.age
eq 比较两个对象是否相同
# 形式: 
def __eq__(self,other):
	return self.要比较的成员变量==other.要比较的成员变量
# 注:要比较的成员变量是一样的
# 如:
def __leq__(self, other):
	return self.age==other.age
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值