鱼C论坛

 找回密码
 立即注册
查看: 2146|回复: 0

[技术交流] 《零基础入门学习python》037笔记:self、__init__、私有变量

[复制链接]
发表于 2017-9-7 13:02:09 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
本帖最后由 汪蛋 于 2017-9-7 16:30 编辑



知识点一:
self就相当于C++里的this指针,小例程来说明一下下:
class Ball:
        def setName(self, name):
                self.name = name
        def kick(self):
                print("我叫%s..." % self.name)
a = Ball()
a.setName('汪蛋')
a.kick()
知识点二:
构造函数__init__(self):
class Ball:
        def __init__(self,name):
                self.name = name
        def kick(self):
                print("我叫%s..." % self.name)
a = Ball('蛋蛋')
a.kick()
知识点三:
在python中定义私有变量只需要在变量前加“__”两个下划线就可以了,那么这个函数或者变量就会变成私有的了,而不存在public以及private这样的关键字。

首先,公有变量如下:
<font size="2">class Ball():
        name = '汪蛋'
# 如下的语句就可以对Ball中name进行访问
a = Ball()
a.name</font>
现在,把变量变为私有:
<font size="2">class Ball():
        __name = '汪蛋'</font>
那么将要用如下两种方法进行访问:
# 对于这样一个类,如何访问私有变量name
class Ball():
        __name = '汪蛋'
        def getName(self):
                return self.__name

# 方法一
a = Ball()
a.getName()
可以看出,其实python类中的私有变量,其实是伪私有

本帖被以下淘专辑推荐:

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-12-26 21:39

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表