类内的函数共享给对象使用
1、为对象指定自己独有的属性
class OldboyStudent:
school="oldboy"
count=0
def __init__(self,x,y,z):#必须函数名为__init__,在调用类时自动触发
self.name = x
self.age = y
self.sex = z
OldboyStudent.count+=1
def choose_course(self):
print("%s is choosing course" %self.name)
#调用类时发生两件事
#发生两件事,第一件事创造出一个空对象stu1#对象本质就是名称空间,在点后面的名称都称为属性
#自动触发类中的__init__功能的执行,将stu1以及调用类括号内的参数一同传入
stu1 = OldboyStudent("yf",18,"male")#因为默认传入stu1所以只要传入剩下参数即可
OldboyStudent.xx=2 #增加属性,往类名称空间内添加
print(stu1.xx) #从对象空间开始找,没有就去类空间找,如果类也没有则报错
print(stu1.__dict__) #显示出stu1内函数__init__自动触发后的所有属性
print(stu1.name) #选择stu1内的某个属性
print(stu1) #显示出stui内存地址
stu2 = OldboyStudent("fxc",18,"female")
stu1.choose_course() #用sut1对象运行类中的函数,形成绑定的关系
# print(stu1.count) #不断调用类产生对象,可以通过计数得到个数,需要注意的是默认计数的开始要放在类的名称空间内
# print(stu2.count) #计数的开始而是在对象的__init__内,需要通过类名称.count来达到与默认值的连接来计数
# 类名称空间中定义的数据属性和函数属性都是共享给所有对象用的
# 对象名称空间中定义的只有数据属性,而且是对象所独有的数据属性
2、继承与派生
'''
1、什么是继承
继承是一种新建类的方式,新建的类称为子类,被继承的类称为父类
继承的特性是:子类会遗传父类的属性
强调:继承是类与类之间的关系
2、为什么用继承
继承的好处就是可以减少代码的冗余
3、如何用继承
在python中支持一个类同时继承多个父类
在python3中
如果一个类没有继承任何类,那默认继承object类
在python2中:
如果一个类没有继承任何类,不会继承object类
新式类
但凡继承了object的类以及该类的子类,都是新式类
经典类
没有继承object的类以及该类的子类,都是经典类
在python3中都是新式类,只有在python2中才区别新式类与经典类
新式类vs经典类?
'''
class king:
school = "oldbay"
def __init__(self,name,age):
self.name=name
self.age=age
class OldbayStudent(king):#在括号内继承父类的内容为继承
def __init__(self,name,age,course):#在自己内的特征,新诞生的属性为派生
king.__init__(self,name,age)#king访问函数属性,为访问普通函数
self.course=course
def select(self,course):
print("%s 选择课程 %s" %(self.name,self.course))
class OldbayTeather(king):
def __init__(self,name,age,grade):
king.__init__(self,name,age)
self.grade=grade
def system(self,stu_name,num):#提供学生名与打分
print("%s 打分" %self.name)
stu_name.score=num#学生名.名称=打分分数,直接加到学生的对象名称空间中,__init__内
user1=OldbayStudent("yf",18,"python")
user2=OldbayStudent("fxc",21,"python")
user3=OldbayStudent("zz",21,"linex")
user4=OldbayTeather("egon",18,10)
user4.system(user1,99)#运行教师的函数,传入对应的学生名与分数,
# 分数会对应学生名进入学生的名称空间对象中
print()
转载于:https://www.cnblogs.com/yf18767106368/p/9229695.html
类内的函数共享给对象使用相关推荐
- c++学习笔记之基础---类内声明函数后在类外定义的一种方法
在C++的"类"中经常遇到这样的函数, 返回值类型名 类名::函数成员名(参数表){ 函数体.} 双冒号的作用 ::域名解析符!返回值类型名 类名::函数成员名(参数表) { 函数 ...
- C++:构造函数重载类内定义函数(内联函数)
构造函数的重载 构造函数是可以重载的,即写多个构造函数,它们具有不同的参数表和相同的名称,如果没有参数信息,编译器就认为调用默认构造函数. 特点 重载构造函数具有不同的参数表和相同的名称 根据传参个数 ...
- 【python】python内置函数——dir()获取对象的属性和方法
dir()函数 不带参数时,返回当前范围内的变量.方法和定义的类型列表: 带参数时,返回参数的属性.方法列表: 如果参数包含方法__dir__(),该方法将会被调用: 如果参数不包含__dir__() ...
- python函数用于创建对象_Python-创建类并使用函数更改其对象值
有人建议我把这个重新贴出来以便更清楚. 上完一节课,剩下的就不上这节课了.欢迎任何指导.我已经得出了这个问题的一部分,在那里我坚持要保持简短.我还附上了我的工作. 在下面的工作中,我希望能够创建一个包 ...
- JavaScript 函数定义+内置函数使用+array对象+object类型
文章目录 函数定义 random() setInterval() setTimeout() 数组对象 object 函数定义 两种格式: function 自定义函数名称(参数1,参数2,...,参数 ...
- python的内置函数string_Python错误:内置函数或方法对象没有属性“StringIO”
我只想下载一张图片.然后上传到Amazon S3.但它不起作用.在'builtin_function_or_method' object has no attribute 'StringIO' Tra ...
- Python基础必掌握的5种数据类型和8种内置函数基本操作
今天跟着我一起学习/复习一下Python语法的5种基本数据类型和8种数据基本操作.如果你已经掌握了这块内容,也建议跟着文中代码进行操作加深印象巩固学习成果. 整套学习自学教程中应用的数据都是<三 ...
- C++内联函数学习总结
C++中的内联函数inline总结 http://blog.csdn.net/coder_xia/article/details/6723387 突然看到C++Primer中讲到,对于vector的一 ...
- python __call__一般用在哪些地方_Python __call__内置函数的作用和用法
开学了进入了实验室,需要协助大师兄做事,主要是OpenStack中的代码解析,但是涉及很多python高级用法,一时间有点麻烦,在做项目的同时慢慢更新博客.这次先写一下__call__的用法,因为经常 ...
最新文章
- WAIC | 云天励飞副总裁肖嵘:创「芯」时代 打造自进化城市智能体
- 使用ssh连接WSL
- 重磅!阿里云MongoDB 5.0发布,速来围观新特性
- js 设备条形码字体_蚌埠食品袋激光打码机设备-青岛博泰格睿特
- OpenShift 4 - 关闭更新MachineConfig后集群节点自动重启功能
- k8s集群部署项目_JAVA项目(部署镜像暴露应用)---K8S_Google工作笔记0062
- (筆記) 如何增加SignalTap II能觀察的reg與wire數量? (SOC) (Quartus II) (SignalTap II)
- 4.5_abstract_factory_创建型模式:抽象工厂模式
- 12月15日学习内容整理:ORM中的queryset类型,中介模型,extra函数和分组补充
- 恢复出厂设置后itms注册失败_手机恢复出厂设置后,与新手机的区别已被确认,望大家相互转告!...
- Spring MVC中基于自定义Editor的表单数据处理技巧
- 获取京东JDCookie
- Word中插入图片只显示一行的问题
- 经典BBS语录100条
- 系统时间不够精确?试试RTC(实时时钟)
- Matlab 去趋势处理
- 7-3 学习打卡(12.5)
- 软件架构设计系列总结
- python拥有庞大的计算生态_Python稳基修炼之计算机等级考试易错概念题1(含答案与解析)...
- 22-Excel与数据分析
热门文章
- java只有高跟很高_女明星们为了合影不输,练就踩高跷本领,鞋跟一个比一个高!...
- python中常见的运行时错误_常见Python运行时错误之一
- javascript 克隆/clone:Object.assign
- 【若依(ruoyi)】按钮怎么挨到一起了?
- eclipse 设置 content type 编码格式
- 【linux】查看ip
- bootstrap 栅栏剧中_Bootstrap 栅栏布局中 col-xs-*、col-sm-*、col-md-*、col-lg-* 区别及使用方法...
- 用python公众号开书城步骤_资源 | 开放Python书籍:一本短小精悍的初学者入门指南...
- mysql 换行_教你如何用Python 连接 MySQL
- html新年倒计时代码_js实现倒计时