走进类的世界
人们常说,物以类聚,人以群分,计算机面向世界的编程,就这样从类开始进化,这是编程思想的进化,也是计算机模拟世界必然发展趋势,类的出现为人类通过计算机更好的了解世界,分析世界,提高认识世界的能力,提供了很好的数字基础,所以学习Python一定要掌握类(class).
定义一个新类
你会发现和定义一个函数用到def一样,定义类也会用到一个关键字,class,接下来我们就一起定义一个类吧!
class SampleClass(object):
``
|定义类关键字:class|类名称:SampleClass |说明类是一个对象的解释(object)也可以没有
### 类的属性:
```
class SampleClass(object):
v = 1
t = SampleClass()
print ("SampleClass是类名称,这里显示的是类属性:",SampleClass.v)
t.v=2
print("t是类SampleClass实例,t.v是实例属性:",t.v)
```
解析:类属性是1,而类的实例属性,随着新赋值的变化,实例的属性也在改变 。
### 类的方法:
```
class SampleClass(object):
def __init__(self):
print("这里是构造方法的函数,这里大家也习惯性的称之为:类的初始化")
```
那么问题来了,为什么非要在类中通过构造方法函数进行初始化这个动作呢?它到底有什么好处呢?
### 类的实例化的好处:
大家知道,一个定义好的类,如果正常工作,一定要对类进行实例化,例如:
```
class SampleClass(object):
def Sample1(self,a,b):
print(a+b)
s_add = SampleClass() # 把类实例化,实例名为:s_add
s_add.Sample1(10,20)
print(s_add)
```
把类实例化后,类的属性才可以调用,这样的类才真正的有意义,举个例子,我们定义狗这个类,我们给其以下属性:1、颜色 2、雌雄 ,这只是定义了它的类,如果我们不具体说哪一只****狗(实例化)****,我们就无法看到它的颜色,它的雌雄,所以类的有意义一定要建立在实例化的基础上才可以。
**1、类的实例化格式是:类名加()
2、一个类可以被多次实例化,各个实例之间不相互影响**
###类的属性
class Person(object):
num= 0
def __init__(self, name):
self.name = name
Person.num += 1
p1 = Person('xiaowang')
print(Person.num) # 1
p2 = Person('xiaoli')
print(Person.num) # 2
p3 = Person('xiaozhao')
print(Person.num)
```
这里的num是类的属性,它是类Person的共享属性,也就是说以后对于Person而言,无论有多少子类,这个初始值都是0,它和实例属性区别在于实例属性是单独享有,而类属性是大家共有且只有一个。
————————————————————————————————————————————关于类,我们先介绍到这里,后续会继续更新,感谢大家观看!