python 面向对象基础入门

#定义教师类,将其作为具体教师对象的模板。该类中包含教师对象属性:name age gendar position属性。

#基于教师类,创建不同教师对象,要求其具有对应的姓名、年龄、性别和职务。

#1.init ()方法

class Teacher:

teacher_count=0 #添加一个类属性;

def init (self,name,age,gendar,position):

self.name=name

self.age=age

self.gendar=gendar

self.position=position

Teacher.teacher_count+=1

#创建Teacher的对象;

teacher1=Teacher("张三丰",22,"女","武术老师")

teacher2=Teacher("刘敏",22,"女","英语老师")

#打印老师的信息

print(f'第一位老师的具体信息:{teacher1.name},{teacher1.age},{teacher1.gendar},{teacher1.position}')

print(f'当前有{Teacher.teacher_count}位老师!')

#打印第二位老师的信息

print(f'第二位老师的具体信息:{teacher2.name},{teacher2.age},{teacher2.gendar},{teacher2.position}')

print(f'当前有{Teacher.teacher_count}位老师!')

#2.类的属性

#类的属性 绑定与类本身,而非类的某个特定实例变量。它们通常用于存储与类整体相关的信息,或当所有实例需要共享同一个数据时。

class MyClass:

#我是类的属性

class_attr="I am a class attribute"

obj1=MyClass()

obj2=MyClass()

#打印属性信息

print(obj1.class_attr)

print(MyClass.class_attr)

相关推荐
不正经学生15 分钟前
C语言预处理详解:编译器真正动手之前的那些事
c语言·开发语言·算法·面试·bug
门思科技25 分钟前
LoRaWAN 设备类别:Class A、B、C 对比与选型指南
c语言·开发语言·php
ℋᙚᵐⁱᒻᵉ鲸落3 小时前
移动端滑动手势冲突:overflow: auto导致外层横向滑动失效
前端·javascript·css·vue.js·html
恋恋西风3 小时前
C++ 理解 std::thread 在单核和多核上的行为差异
开发语言·c++
Brilliantwxx3 小时前
【Linux】 进程(9)程序与进程地址空间(基础+进阶+面试题)
linux·运维·服务器·开发语言·c++
BizzZ_4 小时前
C++(22)——类型转换和IO流
开发语言·c++
默_笙4 小时前
🎃 前端学了 Next.js,后端该学啥?NestJS 就是 Node 版的蜜雪冰城
前端·javascript
小范同学_4 小时前
JDK1.7 与 JDK1.8 HashMap 底层原理对比 + 数组并发扩容死循环详解
java·开发语言
geovindu4 小时前
CSharp: 万年历
开发语言·后端·c#·.net
傲笑风4 小时前
【openvino】tinybert基于openvino服务化部署(四)
人工智能·python·自然语言处理·nlp·bert·openvino