码迷,mamicode.com
首页 > 编程语言 > 详细

关于理解python类的小题

时间:2017-04-23 10:44:24      阅读:158      评论:0      收藏:0      [点我收藏+]

标签:pre   理解   person   没有   函数   记录   规则   原因   color   

今天看了python部落翻译的一篇《一道python类的小题》文章,感觉挺有启发性,记录下来:

 1 print(A)
 2 class Person(object):
 3     print(B)
 4     def __int__(self,name):
 5             print(C)
 6             self.name = name
 7     print(D)
 8 print(E)
 9 
10 
11 p1= Person(name1)
12 p2 = Person(name2)

输出结果:

A
B
D
E
C
C

这里首先需要理解是,一、python程序的运行规则是一行一行依次执行的。二、python中类和函数的运行方式是有区别的。函数只有在调用时才会被执行(即运行内部的代码),在定义时并没有执行。而类在定义时就已经一行一行执行内部代码,并非实例化时才执行。这就是先打印A,接着B的原因。当代码运行到__int__时,类的定义中并没有调用该函数,所以未执行。所以输出的是D和E。 p1和p2实例化时,即调用了__int__函数,执行函数内部代码,打印C,C。

关于理解python类的小题

标签:pre   理解   person   没有   函数   记录   规则   原因   color   

原文地址:http://www.cnblogs.com/zhengzh/p/6751731.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!