Python变量

Python中变量类型:局部变量全局变量类变量对象变量外部变量

大家好,又见面了,我是全栈君,今天给大家准备了Idea注册码。

全栈程序员社区此处内容已经被作者隐藏,请输入验证码查看内容
验证码:
请关注本站微信公众号,回复“验证码”,获取验证码。在微信里搜索“全栈程序员社区”或者“www_javaforall_cn”或者微信扫描右侧二维码都可以关注本站微信公众号。

Python中变量类型:

  局部变量

  全局变量

  类变量

  对象变量

  外部变量

#encoding:UTF-8

#类本身拥有自己的类变量(保存在内存),当一个TestClass类的对象被构造时,
#会将当前类变量拷贝一份给这个对象,当前类变量的值是多少,
#这个对象拷贝得到的类变量的值就是多少;而且,通过对象来修改类变量,
#并不会影响其他对象的类变量的值,因为大家都有各自的副本,
#更不会影响类本身所拥有的那个类变量的值;
#只有类自己才能改变类本身拥有的类变量的值 

class TestClass:
    val1 = 100    #类变量

    def __init__(self):
        self.val2 = 200      #对象变量

        val3 = 300
        
        print (self.val1)     #通过类对象调用类变量    ok
        print (TestClass.val1)#通过类调用类变量ok
        
        print (self.val2)     #通过类对象调用对象变量ok
        #print (TestClass.val2)#通过类调用对象变量erro

        #print (self.val3) #erro


if __name__ == "__main__":
    object = TestClass()
    #print (object.val3) #erro


val4 = 400   # 全局变量
def fun1():
    #global val4     #若要修改全局变量的值需要使用global关键字
    #val4 = 500   
    #print (val4)
    
    print (val4) #ok  #若全局变量不在=的左边可以不需要global关键字
    a = val4
    print (a)

    #val4 = 500   #erro
    #print (val4)

fun1()

def fun2():
    aa = [600]   #函数外部变量
    cc = 600
    def fun3():
        #global cc   # 不能使用global
        print (cc)
        #cc = 800    #erro 注意无法修改外部变量
        #print (cc)
        aa[0] += 10
        print (aa[0])
        bb = 700   
        print (bb)
    return fun3

fun2()()

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/120225.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • java实现国密SM4加密「建议收藏」

    java实现国密SM4加密「建议收藏」前言最近世界政治影响,我国也开始要求算法的使用,以避免来自外国的黑客入侵。我们在使用加密算法时,有必要选择使用国密算法进行加密一、国密SM4是什么? 国密即国家密码局认定的国产密码算法。 主要有SM1,SM2,SM3,SM4。密钥长度和分组长度均为128位。 SM1为对称加密。其加密强度与AES相当。该算法不公开,调用该算法时,需要通过加密芯片的接口进行调用。 SM2为非对称加密,基于ECC。该算法已公开。由于该算法基于ECC,故其签名速度与秘钥生成速度都快于RSA ECC2.

    2022年10月5日
    0
  • SecureCRT 乱码解决方法

    转载:http://xinzhi.wenda.so.com/a/1520602809206038SecureCRT是一个商业终端连接工具。默认设置下,通过SecureCRT连接SSH服务器可能出现中文乱码的情况。这是由于SecureCRT字符编码与服务器的字符编码不一致造成的。下面讲讲如何解决。材料/工具SecureCRT.方法1 在工具栏中点开“选项”,选择“会话选项”。…

    2022年4月8日
    42
  • python lambda表达式_python表达式是什么

    python lambda表达式_python表达式是什么Lambda表达式lambda表示的是匿名函数,不需要用def来声明,一句话就可以声明出一个函数语法函数名=lambda参数:返回值注意点1.函数的参数可以有多个,多个参数之间用逗号隔

    2022年8月6日
    6
  • linux关闭端口进程命令,linux关闭端口命令

    linux关闭端口进程命令,linux关闭端口命令在linux中我们可以通过命令来启动和关闭端口,那么具体是哪个命令呢?下面由学习啦小编为大家整理了linux关闭端口的相关命令,希望对大家有所帮助。linux关闭端口命令前提:首先你必须知道,端口不是独立存在的,它是依附于进程的。某个进程开启,那么它对应的端口就开启了,进程关闭,则该端口也就关闭了。下次若某个进程再次开启,则相应的端口也再次开启。而不要纯粹的理解为关闭掉某个端口,不过可以禁用某个端…

    2022年7月20日
    43
  • Java文件是如何编译成Dex文件的?如何执行Dex文件?「建议收藏」

    Java文件是如何编译成Dex文件的?如何执行Dex文件?「建议收藏」本文将介绍Dex文件,以及Java文件如何生成Dex文件的?最后介绍Dex文件通过什么方式来执行?

    2022年6月27日
    38
  • 小米手机1亿像素跟相机(2020相机新品)

    小米集团旗下品牌Redmi再度发布多款“性价比之王”手机新品。11月26日,小米发布RedmiNote9系列的Note9Pro、Note95G和Note94G三款手机新品,三款手机价格均位于“千元档”甚至低于千元,再度成为市场上同价位机型中的“性价比之王”。对此,小米集团副总裁、中国区总裁、Redmi品牌总经理卢伟冰重申,“Redmi的想法很简单,就是为用户做好产品,然后价格卖的尽量厚道,坚持高端产品大众化,大众产品品质化。”此次小米推出的Note9Pro沿袭了之前的Note8Pro在超清

    2022年4月10日
    42

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号