当前位置: 首页 > news >正文

网站建设 课程 说明免费推广链接

网站建设 课程 说明,免费推广链接,网站制作软件安卓版,泰州网站制作费用Python的类变量和对象变量声明解析 原文链接:https://www.cnblogs.com/bwangel23/p/4330268.html Python的类和C一样,也都是存在两种类型的变量,类变量和对象变量!前者由类拥有,被所有对象共享,后者由每个…

Python的类变量和对象变量声明解析

原文链接:https://www.cnblogs.com/bwangel23/p/4330268.html


Python的类和C++一样,也都是存在两种类型的变量,类变量和对象变量!前者由类拥有,被所有对象共享,后者由每个对象独有。这里我主要想讨论一下他们的声明办法。

首先说的是类变量

只要是声明在类的语句块中,且没有"self."前缀的变量都是类变量,且类变量是被所有对象共享的。

注意红字部分,如果声明在类的方法的语句块中,那么就是局部变量了!比如下面这个例子:

#!/usr/bin/env python
# -* - coding: UTF-8 -* -
#Function: Use the class varclass Person:cvar = 1 # 类的变量def sayHi(self):fvar = 1 # 方法sayHi()中的局部变量print(Person.cvar)
print(Person.fvar)

那个cvar就是属于Python类的变量,而那个fvar就是方法sayHi()中的局部变量,第11条语句那里就会报错!

接下来我们再来讨论一下对象变量的声明方法:

在类的方法的语句块中声明的以“self.”开头的变量都是对象变量,由对象独有!

比如下面这个例子

#!/usr/bin/env python
# -* - coding: UTF-8 -* -
#Function: Use the object varclass Person:def haveName(self):self.name = 'Michael'def sayName(self):print(self.name)def main():p = Person()p.haveName()p.sayName()main()

这里在haveName()方法中声明了一个对象变量,然后再在sayName()方法中调用。然后主程序中就会输出了!

不过建议将对象变量声明在__init__()方法中,因为对象一被创建的时候即会调用这个方法,否则的话,比如上面那个例子,如果我先调用sayName()的话,那么就会出错,说对象实例还没有name这个属性!

最后还想说的一点的就是,Python中没有private public这些关键字来标明类的变量或者方法的访问权限,但是可以通过在变量或者方法的前面加上"__"来表明这个成员是被类私有的,不能在外部调用,比如下面这个例子:

#!/usr/bin/env python
# -* - coding: UTF-8 -* -
#Function: Use the private var and funcclass Person:__count = 0            #这个变量是私有数据成员,只能被类的方法访问,是属于类的def get(self):return(Person.__count)def __pri(self):print('Yes')p = Person()
print(p.get())p.__pri()
print(p.__count)

比如这里的类变量__count就是类私有的,只能被类的函数成员调用(13行),而在类外面调用(16行)就是错误的!还有那个函数成员__pri()也是私有的,在类外面直接调用(15行),也是错误的!

http://www.dt0577.cn/news/12920.html

相关文章:

  • 威海网站建设公司哪家好太原网站制作推广
  • 贵阳网页设计培训学校广州网站运营专注乐云seo
  • 怎么做购物微信网站新闻头条今日要闻国内新闻最新
  • wordpress百度云对象存储seo推广学院
  • 海口高端品牌网站建设国内新闻热点事件
  • 求购做网站网页制作模板的网站
  • 网络技术与网站建设株洲网站设计
  • GTA5房产网站建设中自建网站平台有哪些
  • 破解软件库合集资料网址大全优化网络培训
  • 淘宝客网站主题下载深圳关键词排名优化系统
  • 做网站盈利靠谱的广告联盟
  • 有什么好的网站做数学题吗青岛网站优化公司
  • 网站模版怎么做百度识图查图片
  • 企业门户网站功能列表aso推广
  • 做网站的标性网站做优化好还是推广好
  • 江西城乡建设培训中心网站代做百度首页排名价格
  • 杭州电商直播培训班怎么做网站优化
  • 简述网站开发的基本流程图百度商店应用市场
  • php 企业网站 后台图片上传外贸网站大全
  • 江门官网建站公司网络推广理实一体化软件
  • 网站开发合同书百度信息流推广技巧
  • 电商网站运营团队建设方案模板广州seo公司哪个比较好
  • 做设计外包的网站长沙百度推广运营公司
  • 建站工具 开源试分析网站推广和优化的原因
  • 三语网站建设google优化推广
  • chn域名注册网站百度资源搜索平台官网
  • 沈阳搜索排名公司优化大师win10能用吗
  • 嘉定区整站seo十大排名广东宣布即时优化调整
  • 百度网站如何做外贸企业网站设计公司
  • 企业网站建设技术班级优化大师电脑版