1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
# -*- coding: utf-8 -*-
"""
Created on Sun Nov 13 23:19:03 2016
 
@author: toby
"""
 
class  Province:
     def  __init__( self ,name,capital,leadership):
         self .Name  =  name
         self .Capital  =  capital
         self .Leadership  =  leadership
     
hb  =  Province( 'hebei' , 'shjiazhuang' , 'liyang' )
sd  =  Province( 'shandong' , 'jinan' , 'angshenghui' )
 
 
 
'''
下几点说明:
1、self是神码东东?
接受对象本身hb,sd
2、'hebei','shjiazhuang','liyang'由 __init__()函数中的形惨name,capital,leadership负责接收
3、self.Name = name 是把形惨name中接受到的值赋值给self.Name
4、 self.Name中的这个Name可以自定义(比如换成aa都可以),那么是为了更清晰的直到其用途所以建议取一个有意义的名字
5、 'hebei','shjiazhuang','liyang'三个值想当是被封装进里实例化后的对象hb里
'''
 
 
#在类里声明一个类变量
class  Province:
     memo  =  'One of China\'s 23 provinces'  #类变量,也可以说是静态字段
     def  __init__( self ,name,capital,leadership):
         self .Name  =  name  #实例变量,属于对象的,也可称为动态字段
         self .Capital  =  capital
         self .Leadership  =  leadership
     
hb  =  Province( 'hebei' , 'shjiazhuang' , 'liyang' #相当于将'hebei','shjiazhuang','liyang'封装到了类的对象hb里边
sd  =  Province( 'shandong' , 'jinan' , 'angshenghui' )
 
print  hb.Name  #打印对象属性
print  Province.memo  #打印类变量
 
#尝试通过类访问动态字典(静态类不能问访问动态字段)
print  Province.Name  #结果:报错,找不到该属性
 
#通过对象访问静态字段
print  hb.memo   #对象可以访问静态字段