1 Star 0 Fork 0

dbembed/PythonLearn

加入 Gitee
与超过 1400万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
文件
克隆/下载
learnClass.py 2.03 KB
一键复制 编辑 原始数据 按行查看 历史
'''
深入理解Python面向对象
类、类的实例
类就是一个模板,模板里可以包含多个函数,函数里实现一些功能
对象则是根据模板创建的实例,通过实例对象可以执行类中的函数
#面向对象是一种编程方式,此编程方式的实现是基于对 类 和 对象 的使用
#类 是一个模板,模板中包装了多个“函数”供使用
#对象,根据模板创建的实例(即:对象),实例用于调用被包装在类中的函数
#面向对象三大特性:封装、继承和多态
'''
#变量位置的测试
'''
变量位置的不同,名字空间不同。
像下面的var_02属于类的属性,可以在__init__里self应用,若在__init__里修改(比如self.var_02 += 1),这是的__init__里的self.var_02
已经和上面的var_02不是同一个了。不信你可以在最后打印一下这个类名.var_02(VarTest.var_02)看一看
'''
var_01 = 0
class VarTest:
var_02 = 1
print(id(var_02))
def __init__(self):
# var_02 = 1
# print(id(self.var_02))
# self.var_02 += 2
self.var_03 = 0
# print(var_02)
# print(self.var_01)
print('var_02 in __init__:', self.var_02)
print('var_03 in __init__:', self.var_03)
def var_test(self):
self.var_02 += 1
self.var_03 += 1
print('var_02 in var_test:', self.var_02)
print('var_03 in var_test:', self.var_03)
var = VarTest()
var.var_test()
print('var_02 out of class:', var.var_02)
# print('var_03 out of class:', var.var_03)
print('var_01 out of class:', var_01)
print('var_02 out of class:', VarTest.var_02)
'''
class AddrBook(object):
'address book entry class'
count = 0
def __init__(self, nm, ph):
self.name = nm
self.phone = ph
AddrBook.count += 1
print('Create instance for:', self.name)
def update_phone(self, newph):
self.phone = newph
print('Updated phone# for:', self.name)
john = AddrBook('John Doe', '408-55-1212')
jane = AddrBook('Jane Doe', '650-55-1212')
'''
Loading...
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
Python
1
https://gitee.com/dbembed/PythonLearn.git
git@gitee.com:dbembed/PythonLearn.git
dbembed
PythonLearn
PythonLearn
master

搜索帮助