python局部变量引用问题
2024-08-21 10:40:56
a = [1, 2]
b = 'Immutable'
def test():
# global b
print(a)
a.append('asd')
b = b + 'asd' # 当只是引用变量b的值,如:filename=b,而非修改b的值时,不需声明全局b变量
def test2():
print(a)
print(b)
test2() test()
# 在python3中,若在局部中有改变不可变类型的全局变量的值的操作,无论先后顺序,系统会默认为将该变量作为局部变量,不会再去全局寻找该变量的值,因此如上的代码,会报错:
# 解决办法是使用global将该变量变为全局变量。 另,在局部中增,删,改可变类型的全局变量的元素,不存在这个问题
最新文章
- c 数组与指针的使用注意事项
- Tomcat虚拟目录配置方法及原理
- 关于新增元素使用jQuery on()方法重复绑定的问题
- Filter过滤器简单应用( 接口访问控制 )
- 内存溢出(heap corruption detected:)
- PAT-乙级-1004. 成绩排名 (20)
- php 验证码生成方法 及使用
- HDU 2601 An easy problem
- erlang分布式编程模型
- ●BZOJ 2588 Spoj 10628. Count on a tree
- [zt]C++二维数组讲解、二维数组的声明和初始化
- hive时间日期函数及典型场景应用
- java既然存在gc线程,为什么还存在内存泄漏?
- 美团面试-canvas实现放射图
- python3 安装 opencv (转)
- Python函数绘图
- Vue基础进阶 之 计算属性的使用
- ajax设置自定义请求头
- myEclipse或eclipse复制或修改项目后的部署名称
- Oracle中按规定的字符截取字符串