类的调用

实例化

class Luffy:
school = 'luffy'
def __init__(self,name,age):
self.Name = name
self.Age = age
def learn(self):
print('%s is learning' % self.Name)
def eat(self):
print('is eating') stu1 = Luffy('xing',19)

__init__,初始化方法,可差异化不同对象,self为自己本身,实例化时把 自己传递进去了

stu1 = Luffy('xing',19)
print(stu1.Name)
Luffy.__init__(stu1,'yang',22)
print(stu1.Name)
---------------------------------------
xing
yang

甚至可以通过以上方法更改属性

stu1 = Luffy('xing',19)

stu1.learn()
Luffy.learn(stu1)
--------------------------------
xing is learning
xing is learning

以上为调用类的方法的两种方法

注意:

实例化对象有自己的特有属性

stu1 = Luffy('Tom',19)
stu2 = Luffy('Bob',22) print(stu1.__dict__)
print(stu2.__dict__)
---------------------------
{'Name': 'Tom', 'Age': 19}
{'Name': 'Bob', 'Age': 22}

实例化对象的公共数据属性都指向类中数据属性的地址,而函数属性则是自己的地址

stu1 = Luffy('Tom',19)
stu2 = Luffy('Bob',22) print(id(stu1.school))
print(id(stu2.school))
print(id(Luffy.school)) print(id(stu1.learn))
print(id(stu2.learn))
print(id(Luffy.learn))
-------------------------------
15527680
15527680
15527680 # 数据属性地址一样 12010160
12010160
16096184 # 函数属性地址stu1和stu2一样(可能是Python新版的优化)

Python3 中统一了类型与类的概念

l1 = [1,2,3]
l2 = list([4,5,6])
print(type(l1),type(l2)) l1.append(4)
list.append(l2,7)
print(l1)
print(l2)
------------------
<class 'list'> <class 'list'> [1, 2, 3, 4]
[4, 5, 6, 7]

最新文章

  1. Java-数组练习2
  2. [LeetCode]题解(python):088 Merge Sorted Array
  3. Rman-03002,Rman-12010,Rman-12012
  4. iOS socket编程 第三方库 AsyncSocket(GCDAsyncSocket)
  5. JavaScript原型模式
  6. c - 根据首字母判断星期几
  7. AES - Rijndael 算法(二)
  8. MyEclipse中jsp的凝视报错解决
  9. (实用篇)使用PHP生成PDF文档
  10. 数据结构之队列c代码实现
  11. 用addRoutes实现动态路由
  12. 03-Linux的shell命令 .doc
  13. BZOJ3932: [CQOI2015]任务查询系统 主席树
  14. SQLite中的SELECT子句使用表达式
  15. LOJ6070 基因 分块+回文自动机
  16. 使用安装 php-memcache-client
  17. css实现常用的两栏三栏布局
  18. solr高亮设置以及摘要
  19. Beta阶段基于NABCD评论作品
  20. 微信小程序入门一: 简易form、本地存储

热门文章

  1. java编写网站数据抓取
  2. Jenkins+Ant+Git+Jmeter接口自动化
  3. mlflow ui 启动报错No such file or directory: &#39;gunicorn&#39;: &#39;gunicorn&#39;
  4. Get Raster Properties获得栅格的信息
  5. PHP学习之工厂模式
  6. Mac 上卸载node和npm
  7. android指纹识别认证实现
  8. 从零搭建配置Cuckoo Sandbox
  9. Qt编写自定义控件31-面板仪表盘控件
  10. DSS分发压力实验