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

类内的函数共享给对象使用相关推荐

  1. c++学习笔记之基础---类内声明函数后在类外定义的一种方法

    在C++的"类"中经常遇到这样的函数, 返回值类型名 类名::函数成员名(参数表){ 函数体.} 双冒号的作用 ::域名解析符!返回值类型名 类名::函数成员名(参数表) { 函数 ...

  2. C++:构造函数重载类内定义函数(内联函数)

    构造函数的重载 构造函数是可以重载的,即写多个构造函数,它们具有不同的参数表和相同的名称,如果没有参数信息,编译器就认为调用默认构造函数. 特点 重载构造函数具有不同的参数表和相同的名称 根据传参个数 ...

  3. 【python】python内置函数——dir()获取对象的属性和方法

    dir()函数 不带参数时,返回当前范围内的变量.方法和定义的类型列表: 带参数时,返回参数的属性.方法列表: 如果参数包含方法__dir__(),该方法将会被调用: 如果参数不包含__dir__() ...

  4. python函数用于创建对象_Python-创建类并使用函数更改其对象值

    有人建议我把这个重新贴出来以便更清楚. 上完一节课,剩下的就不上这节课了.欢迎任何指导.我已经得出了这个问题的一部分,在那里我坚持要保持简短.我还附上了我的工作. 在下面的工作中,我希望能够创建一个包 ...

  5. JavaScript 函数定义+内置函数使用+array对象+object类型

    文章目录 函数定义 random() setInterval() setTimeout() 数组对象 object 函数定义 两种格式: function 自定义函数名称(参数1,参数2,...,参数 ...

  6. python的内置函数string_Python错误:内置函数或方法对象没有属性“StringIO”

    我只想下载一张图片.然后上传到Amazon S3.但它不起作用.在'builtin_function_or_method' object has no attribute 'StringIO' Tra ...

  7. Python基础必掌握的5种数据类型和8种内置函数基本操作

    今天跟着我一起学习/复习一下Python语法的5种基本数据类型和8种数据基本操作.如果你已经掌握了这块内容,也建议跟着文中代码进行操作加深印象巩固学习成果. 整套学习自学教程中应用的数据都是<三 ...

  8. C++内联函数学习总结

    C++中的内联函数inline总结 http://blog.csdn.net/coder_xia/article/details/6723387 突然看到C++Primer中讲到,对于vector的一 ...

  9. python __call__一般用在哪些地方_Python __call__内置函数的作用和用法

    开学了进入了实验室,需要协助大师兄做事,主要是OpenStack中的代码解析,但是涉及很多python高级用法,一时间有点麻烦,在做项目的同时慢慢更新博客.这次先写一下__call__的用法,因为经常 ...

最新文章

  1. WAIC | 云天励飞副总裁肖嵘:创「芯」时代 打造自进化城市智能体
  2. 使用ssh连接WSL
  3. 重磅!阿里云MongoDB 5.0发布,速来围观新特性
  4. js 设备条形码字体_蚌埠食品袋激光打码机设备-青岛博泰格睿特
  5. OpenShift 4 - 关闭更新MachineConfig后集群节点自动重启功能
  6. k8s集群部署项目_JAVA项目(部署镜像暴露应用)---K8S_Google工作笔记0062
  7. (筆記) 如何增加SignalTap II能觀察的reg與wire數量? (SOC) (Quartus II) (SignalTap II)
  8. 4.5_abstract_factory_创建型模式:抽象工厂模式
  9. 12月15日学习内容整理:ORM中的queryset类型,中介模型,extra函数和分组补充
  10. 恢复出厂设置后itms注册失败_手机恢复出厂设置后,与新手机的区别已被确认,望大家相互转告!...
  11. Spring MVC中基于自定义Editor的表单数据处理技巧
  12. 获取京东JDCookie
  13. Word中插入图片只显示一行的问题
  14. 经典BBS语录100条
  15. 系统时间不够精确?试试RTC(实时时钟)
  16. Matlab 去趋势处理
  17. 7-3 学习打卡(12.5)
  18. 软件架构设计系列总结
  19. python拥有庞大的计算生态_Python稳基修炼之计算机等级考试易错概念题1(含答案与解析)...
  20. 22-Excel与数据分析

热门文章

  1. java只有高跟很高_女明星们为了合影不输,练就踩高跷本领,鞋跟一个比一个高!...
  2. python中常见的运行时错误_常见Python运行时错误之一
  3. javascript 克隆/clone:Object.assign
  4. 【若依(ruoyi)】按钮怎么挨到一起了?
  5. eclipse 设置 content type 编码格式
  6. 【linux】查看ip
  7. bootstrap 栅栏剧中_Bootstrap 栅栏布局中 col-xs-*、col-sm-*、col-md-*、col-lg-* 区别及使用方法...
  8. 用python公众号开书城步骤_资源 | 开放Python书籍:一本短小精悍的初学者入门指南...
  9. mysql 换行_教你如何用Python 连接 MySQL
  10. html新年倒计时代码_js实现倒计时