少说话多写代码之Python学习041——类03(类命名空间 )

栏目: Python · 发布时间: 6年前

内容简介:先看两个函数,实现一个数的平方。输出调用时,squarter和squarter2可以在全局函数模块定义,也可以在局部函数中定义。这样定义的其实都可称作代码块。而我们定义的类,其实是一个特殊的代码块,代码块中的变量,方法

先看两个函数,实现一个数的平方。

def squarter(x):
    return  x*x

squarter2 = lambda  x: x*x

print(squarter(9))
print(squarter2(8))

输出

调用时,squarter和squarter2可以在全局函数模块定义,也可以在局部函数中定义。这样定义的其实都可称作代码块。而我们定义的类,其实是一个特殊的代码块,代码块中的变量,方法

只能被这个类的实例所访问。比如下面我们定义的类,如果需要访问元素只能通过实例访问,且不同的实例都可以访问类里的元素。

class memberCollectCount:
    count=0
    def init(self):
        memberCollectCount.count +=1

m1=memberCollectCount()
m1.init()
print(m1.count)

m2=memberCollectCount()
m2.init()
print(m2.count)

输出

这里是一个执行计数的一个类,每执行init一次,都计数。

再定义个类,

class memberCollectCount2:
    count=0
    def init(self):
        memberCollectCount2.count +=1

都有count和init但是它们属于不同的类,其实也是属于不同的命名空间。

因为 Python 是解释执行的,只有在执行的时候才会有命名空间产生。

工程文件下载: https://download.csdn.net/download/yysyangyangyangshan/10778545


以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

零基础学C语言

零基础学C语言

康莉//李宽 / 机械工业 / 2009-4 / 48.00元

《零基础学C语言》的特点是内容全面、翔实,通俗易懂,循序渐进地介绍了C语言各方面的知识,重点突出。《零基础学C语言》含有大量实例,代码短小精炼,紧扣所讲要点的本质,以加深读者的印象,同时结合笔者多年使用C语言的经验,阐述了很多代码编写技巧,读者可将代码复制到自己的机器上进行实验,自行实践和演练。C语言是编程方式灵活多样、功能强大、应用广泛的一种程序设计语言。从程序设计语言的发展历程来看,尽管后来出......一起来看看 《零基础学C语言》 这本书的介绍吧!

在线进制转换器
在线进制转换器

各进制数互转换器

HTML 编码/解码
HTML 编码/解码

HTML 编码/解码

正则表达式在线测试
正则表达式在线测试

正则表达式在线测试