Python中变量的绑定,或者说引用

print(‘The simple assignment‘)
shoppingList = [‘chicken‘,‘mango‘,‘apple‘,‘banana‘]
myList = shoppingList

print(‘Before any action‘)
print(‘The shopping list is‘,shoppingList)
print(‘my list is‘,myList,‘\n‘)

print(‘Del the first item from the shopping list‘)
del myList[0]
print(‘the shopping list is‘,shoppingList)
print(‘my list is‘,myList,‘\n‘)

print(‘Copy and then del‘)
myList = shoppingList[:]
del myList[0]
print(‘the shopping list is‘,shoppingList)
print(‘my list is‘,myList,‘\n‘)

#原对象改变,被原对象赋值的变量也随着改变
#被赋值的变量改变,原对象也改变
#变量指向对象在内存中的地址,所以删除了地址上的内容,对大家都有影响
#如果采用切片方式取得值的话,就没有影响

2015/4/19 by Kerita

时间: 2024-10-10 06:21:53

Python中变量的绑定,或者说引用的相关文章

Python中变量的作用域(variable scope)

http://www.crifan.com/summary_python_variable_effective_scope/ 解释python中变量的作用域 示例: 1.代码版 1 #!/usr/bin/python 2 # -*- coding: utf-8 -*- 3 """ 4 ------------------------------------------------------------------------------- 5 Function: 6 [整理

[转]Python中函数的值传递和引用传递

首先还是应该科普下函数参数传递机制,传值和传引用是什么意思? 函数参数传递机制问题在本质上是调用函数(过程)和被调用函数(过程)在调用发生时进行通信的方法问题.基本的参数传递机制有两种:值传递和引用传递. 值传递(passl-by-value)过程中,被调函数的形式参数作为被调函数的局部变量处理,即在堆栈中开辟了内存空间以存放由主调函数放进来的实参的值,从而成为了实参的一个副本.值传递的特点是被调函数对形式参数的任何操作都是作为局部变量进行,不会影响主调函数的实参变量的值. 引用传递(pass-

理解Python中的延迟绑定

直接看下面例子 [Python] 纯文本查看 复制代码 ? 1 2 3 my_ld = [lambda x:x*i for i in range(3)] my_list = [ld(2) for ld in my_ld] print(my_list) 本想是想通过以上代码,输出[0, 2, 4]的,但结果却是[4,  4, 4]      下面说下本人对这个结果的理解:因为Python解释器,遇到lambda(或者def),只是定义了一个匿名函数对象,并保存在内存中,只有等到调用这个匿名函数的时

Python 中变量与内存的关系

老手都是从新手一路过来的,提起Python中难以理解的概念,可能很多人对于Python变量赋值的机制有些疑惑,不过对于习惯于求根究底的程序员,只有深入理解了某个事物本质,掌握了它的客观规律,才能得心应手.运用自如,进阶更高层次来看待这个事物,此刻“庖丁解牛”这个成语能够贴切表达这个意思,你看见的是整头的牛,而我看见的是牛的内部肌理筋骨,就是这个状态!!! 那么为什么Python变量赋值的机制难以理解呢? 我想可能是我们的思维被C语言变量赋值的机制所固化了.在C语言中变量所分配到的地址是内存空间中

Python中变量赋值的8种形式、需要注意哪些细节?

本文解释python中变量赋值的形式,并解释一些细节. python中变量赋值的几种形式 1 x = "long" # (1).基本形式 2 x, y = "long", "shuai" # (2).元组对应赋值 3 [x, y] = ["long", "shuai"] # (3).列表对应赋值 4 a, b, c, d = "long" # (4).序列赋值 5 a, *b = 'lo

python中变量

在Python中,变量的概念基本上和初中代数的方程变量是一致的. 例如,对于方程式 y=x*x ,x就是变量.当x=2时,计算结果是4,当x=5时,计算结果是25. 只是在计算机程序中,变量不仅可以是数字,还可以是任意数据类型. 在Python程序中,变量是用一个变量名表示,变量名必须是大小写英文.数字和下划线(_)的组合,且不能用数字开头,比如: a = 1 变量a是一个整数. t_007 = 'T007' 变量t_007是一个字符串. 在Python中,等号=是赋值语句,可以把任意数据类型赋

python中变量的基本使用及命名规则

目标 变量定义 变量的类型 变量的命名 标识符和关键字 变量的命名规则 01. 变量定义 在 Python 中,每个变量      在使用前都必须赋值,变量      赋值以后      该变量 才会被创建 等号(=)用来给变量赋值      = 左边是一个变量名 = 右边是存储在变量中的值          变量名 = 值     变量定义之后,后续就可以直接使用了 02. 变量的类型 在内存中创建一个变量,会包括: 变量的名称 变量保存的数据 变量存储数据的类型 变量的地址(标示) 在Pyt

python中变量的定义、命名规则、修改及使用原则

一.什么是变量 变量是用于在内存中存放程序数据的容器,以方便后续的调用.存储的方式为“变量名=值”,比如: name="张三" sex = "男" age = 18 height = 180 后边程序想要调用的时候,直接调用变量名即可: 1 print(name) 2 print(sex) 3 print(age) 4 print(heght) 在python中,定义变量时,不需要指定变量的类型! 二.变量的命名规则 变量的命名规则如下: 1.变量名只能是字母.数字

python中变量命名

一 综述:  二 全局变量(包含函数和类): (1)正常变量x: *通过module.x能够使用. *通过from module import *能够使用. (2)以"_"开头变量x: *通过module.x能够使用. *通过from module import *不能使用. *通过from module import x能够使用. (3)以"__开头": *通过module.x能够使用. *通过from module import *不能使用. *通过from m