python类和对象

1.使用对象组织数据

python 复制代码
class Student:
	name=None	#记录名字
stu1=Student()	#创建对象
stu1.name="abc"	#为对象属性赋值

2.类的定义和使用

2.1成员方法的定义语法


传参的时候self是透明的,不用管

python 复制代码
class Stu:
    name=None

    def sayHi(self):
        print(f"你好,我是{self.name}")
	def sayHi2(self,msg):
        print(f"你好,我是{self.name},{msg}")
stu=Stu()
stu.name="aaa"
stu.sayHi()
stu.sayHi2("我是你爹")

2.2构造方法

python 复制代码
class Stu:
    def __init__(self ,name,age,tel):
        self.name=name
        self.age=age
        self.tel=tel
        print("创建了一个对象")

stu=Stu("你爹",11,"adsdd")

只要在类中访问成员变量都要用self

2.3魔术方法



3.面向对象三大特性

3.1封装


使用私有成员

python 复制代码
class Phone:
    __current=None
    
    def __keep_single_core(self):
        print("单核执行")
        
phone=Phone()

phone.__keep_single_core()  #无法使用
phone.__current=1           #无法使用

3.2继承


3.3 复写

子类对父类成员属性和成员方法不满意,可以进行复写,重新定义即可

调用父类同名函数

3.4 类型注解

变量设置类型注解

基础语法:变量:类型



3.5函数或方法的类型注解

3.6 Union类型


3.7多态

完成某个行为时,使用不同的对象会得到不同的状态

抽象类(接口)


相关推荐
吴声子夜歌7 小时前
Java扩展——OkHttp
java·开发语言·okhttp
hhzz7 小时前
【OpenCV 入门到精通 01】认识 OpenCV 与计算机视觉:从零建立全局认知
人工智能·python·opencv·计算机视觉·开源
啊阿狸不会拉杆7 小时前
《计算机网络-自顶向下方法》5.7 网络管理、SNMP和NETCONF/YANG 读书笔记
开发语言·计算机网络·php
长友cy7 小时前
Qt官方示例D-BusListNames阅读
开发语言
萧瑟余晖7 小时前
Java深入解析篇六十一之编译器API(javax.tools)详解
java·开发语言
蜡台8 小时前
Kotlin 零基础完整版实战教程|从语法入门到Android工程实战
android·开发语言·kotlin
jimy18 小时前
C++ 的 “移动语义”——Move Semantics
开发语言·c++
码云数智-园园8 小时前
C++ STL 容器怎么选?vector、list、map、unordered_map 优缺点对比
java·开发语言
一马平川的大草原8 小时前
如何实现SVG转Mermaid图
python·svg·格式转换·mermaid
en.en..8 小时前
竖线 |:管道、按位或、掩码组合
java·开发语言