zoukankan      html  css  js  c++  java
  • Python学习笔记 变量

    蒟蒻高举横幅:部分内容转自廖雪峰的Python教学

    1.Python是动态语言,即它的变量是没有类型的。

    1 !/usr/bin/env python
    2 a = 'ABC'
    3 print a
    4 a = 123
    5 print a
    View Code

    2.关于Python 的变量某些方面,类似于JAVA中的一些对象,Java中的对象,也只是指向某一块内存,而非想c中的int 型变量一样。

    a = 'ABC'
    

    时,Python解释器干了两件事情:

    1. 在内存中创建了一个'ABC'的字符串;

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

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

    a = 'ABC'
    b = a
    a = 'XYZ'
    print b
    

    最后一行打印出变量b的内容到底是'ABC'呢还是'XYZ'?如果从数学意义上理解,就会错误地得出ba相同,也应该是'XYZ',但实际上b的值是'ABC',让我们一行一行地执行代码,就可以看到到底发生了什么事:

    执行a = 'ABC',解释器创建了字符串'ABC'和变量a,并把a指向'ABC'

    py-var-code-1

    执行b = a,解释器创建了变量b,并把b指向a指向的字符串'ABC'

    py-var-code-2

    执行a = 'XYZ',解释器创建了字符串'XYZ',并把a的指向改为'XYZ',但b并没有更改:

    py-var-code-3

    所以,最后打印变量b的结果自然是'ABC'了。

  • 相关阅读:
    网页中的默认按钮
    心动不如行动
    周日骑行广州大学城
    买单车别买重车
    今晚好无聊
    在自行车论坛看到的有趣帖子
    php zend framework 生成 pdf 出现中文乱码
    FPDI Import existing PDF documents into FPDF
    PHP 哈希表,关联数组,遍历方法大全
    zend framework 如何多表查询
  • 原文地址:https://www.cnblogs.com/silence-tommy/p/6429169.html
Copyright © 2011-2022 走看看