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
#对象可以访问静态字段
|
本文转自 TtrToby 51CTO博客,原文链接:http://blog.51cto.com/freshair/1873564