最新公告
  • 欢迎您光临网站无忧模板网,本站秉承服务宗旨 履行“站长”责任,销售只是起点 服务永无止境!立即加入钻石VIP
  • Python中的变量与常量

    正文概述    2020-06-28   287

    Python中的变量与常量

    变量:在程序运行过程中,值会发生变化的量,

    常量:在程序运行过程中,值不会发生变化的量。

    无论是变量还是常量,在创建时都会在内存中开辟一块空间,用于保存它的值。

    Python 中的变量不需要声明类型。

    这是根据Python的动态语言特性而来。变量可以直接使用,而不需要提前声明类型。例如下面的a,b,c,d四个变量,在使用前没有进行任何的诸如int a, str b, list c ,int d的类型声明,而这在C和JAVA中是必须的。

    >>> a = 4
    >>> b = "haha"
    >>> c = []
    >>> d = 9-5

    用“=”号来给变量赋值

    a = 100

    这里的等号要理解并读作“赋值”,而不是“等于”,“赋值”是对变量的操作,而“等于”是对两个变量进行比较。上面的a,b,c,d四个变量,就通过“=”号,赋予了不同的值。

    每个变量在使用前都必须赋值,变量赋值以后才会被创建。

    新的变量通过赋值的动作,创建并开辟内存空间,保存值。如果没有赋值而直接使用会抛出赋值前引用的异常或者未命名异常。例如:

    >>> a       # 孤单单一个a,什么也表示不了,只能报错
    Traceback (most recent call last):
      File "<pyshell#0>", line 1, in <module>
        a
    NameError: name 'a' is not defined
    >>> a = 1   # 这样就没问题了,解释器知道a是个新变量了
    >>> c.append(1)     # c是个什么鬼?
    Traceback (most recent call last):
      File "<pyshell#2>", line 1, in <module>
        c.append(1)
    NameError: name 'c' is not defined

    Python中,一切事物都是对象,变量引用的是对象或者说是对象在内存中的地址。

    这条我们靠后详说。

    在Python中,变量本身没有数据类型的概念,通常所说的“变量类型”是变量所引用的对象的类型,或者说是变量的值的类型。

    >>> a = 1
    >>> a = "haha"
    >>> a = [1, 2, 3]
    >>> a = { "k1":"v1"}

    例子中,变量a在创建的时候,赋予了值为1的整数类型,然后又被改成字符串“haha”,再又变成一个列表,最后是个字典。变量a在动态的改变,它的值分别是不同的数据类型,这是动态语言的特点。

    “=”号这个赋值运算符是从右往左的计算顺序。

    >>> a = 1
    >>> b = 2
    >>> c = a + b       # 先计算a+b的值,再赋给c
    >>> c
    3

    Python允许同时为多个变量赋值。

    例如:a = b = c = 1,最终大家都是1。

    也可以同时为多个变量赋值,用逗号分隔,逐一对应。

    例如:a, b, c = 1, 2, 3,最后a是1,b是2,c是3.

    不要把赋值语句的等号等同于数学的等号。

    x = 1
    x = x + 2

    如果从数学上理解x = x + 2那无论如何是不成立的,在程序中,赋值语句先计算右侧的表达式x + 2,得到结果3,再赋给变量x。由于x之前的值是1,重新赋值后,x的值变成3。

    同时,理解变量在计算机内存中的表示也非常重要。当我们写:

    a = 'ABC'时,Python解释器干了两件事情:

    1.在内存中创建了一个‘ABC’的字符串对象;

    2.在内存中创建了一个名为a的变量,并把它指向'ABC'。

    也可以把一个变量a赋值给另一个变量b,这个操作实际上是将变量b指向变量a所指向的数据,例如下面的代码:

    a = 'Jack'
    b = a
    a = 'Tom'
    print(b)
    print(a)

    最后变量b的内容到底是'Jack'还是'Tom'?如果从数学意义上理解,就会错误地得出b和a相同是‘Tom’,但实际上b的值还是'Jack ‘!

    请牢记:Python中的一切都是对象,变量是对象的引用!


    下载网 » Python中的变量与常量

    常见问题FAQ

    免费下载或者VIP会员专享资源能否直接商用?
    本站所有资源版权均属于原作者所有,这里所提供资源均只能用于参考学习用,请勿直接商用。若由于商用引起版权纠纷,一切责任均由使用者承担。更多说明请参考 VIP介绍。
    提示下载完但解压或打开不了?
    最常见的情况是下载不完整: 可对比下载完压缩包的与网盘上的容量,若小于网盘提示的容量则是这个原因。这是浏览器下载的bug,建议用百度网盘软件或迅雷下载。若排除这种情况,可在对应资源底部留言,或 联络我们.。
    找不到素材资源介绍文章里的示例图片?
    对于PPT,KEY,Mockups,APP,网页模版等类型的素材,文章内用于介绍的图片通常并不包含在对应可供下载素材包内。这些相关商业图片需另外购买,且本站不负责(也没有办法)找到出处。 同样地一些字体文件也是这种情况,但部分素材会在素材包内有一份字体下载链接清单。
    模板不会安装或需要功能定制以及二次开发?
    请QQ联系我们

    发表评论

    还没有评论,快来抢沙发吧!

    如需帝国cms功能定制以及二次开发请联系我们

    联系作者

    请选择支付方式

    ×
    迅虎支付宝
    迅虎微信
    支付宝当面付
    余额支付
    ×
    微信扫码支付 0 元