【python】坑都是踩出来的
2018-01-09 18:43
363 查看
1)本地变量被调用时必须提前申明
x = 12 def f1(): x = 3 print x def f2(): x += 1 #函数内部遇到变量赋值,此处为x = x+1,x会被当做局部变量,但是f2()内部是没有定义的,因此会报错 print x f1() #输出3 f2() #报错,由于x没有被声明 #修改如下 def f2(): global x x += 1 print x f2() #输出132)函数(包括闭包)中局部变量
python中,一个函数可以随意读取全局变量,但是要修改全局变量的时候只有两种方法:1 global声明全局变量 2 全局变量是可变数据类型数据 1)python闭包函数中,我们可以随意使用外函数绑定来的临时变量,但是如果我们想修改外函数的临时变量数值会报错. 2)使用闭包时,一旦外函数被调用一次返回内函数的引用,虽然每次调用内函数,是开启一个函数执行过后消亡,但是闭包变量实际上只有一份,每次开启内函数都在使用同一份闭包变量 def counter(start_at=0): count = start_at def incr(): count += 1 return count return incr def counter(start_at=0): count = [start_at] def incr(): count[0] += 1 return count[0] return incr
相关文章推荐
- 解决python中json模块loads出来的结构都是unicode的问题
- python对象引用_一切都是对象
- $表示jquery,jquery对象都是通过$()函数构造出来的,就是一个jquery对象的构造工厂
- 手把手:一张图看清编程语言发展史,你也能用Python画出来!
- 用Gradle打包出jar文件 前面我们说过,在Android Studio里面使用Gradle来打包应用程序,一般都是build出来一个apk文件。但是有的同学是做实现层的开发,不直接做View层
- 我想搞个python版的http代理服务器出来
- python读取excel,数字都是浮点型,日期格式是数字的解决办法(转)
- python读取excel,数字都是浮点型,日期格式是数字的解决办法
- Python如何将一个矩阵保存到一个列表中,再读出来
- Python 里的 "%s 和 % d" 都是什么意思?
- [python]你有一个目录,放了你一个月的日记,都是 txt,为了避免分词的问题,假设内容都是英文,请统计出你认为每篇日记最重要的词。
- 不要听吹牛逼什么前端MVVM框架就是好,其实都是一帮没学好分层设计的搞出来的,让你彻底看清前端MVVM的本质
- python学习:设计一个算法将缺失的数字找出来。
- 软件天才都是训练出来的
- 网站域名都是从哪里来的(也就是说网络域名是哪个公司弄出来的,总部在哪里? 购买域名的费用到了谁的口袋?)
- 2018——幸福都是奋斗出来的
- python3将csv文件中的两列数据读取出来,并且按行写入txt文本之中
- 职场笔记[0709]:创业企业创造力都是被逼出来的
- 职场笔记[0709]:创业企业创造力都是被逼出来的
- 【Python】python多进程,函数内print的内容没有打印出来