语法#
range vs xrange#
range 是直接返回一个保存全量数据的 list, 空间复杂度是 O(n),
而 xrange 是在遍历中不断生成的,遍历的效率更高,而且空间复杂度是 O(1)
python3 取消了 xrange,range 就是 xrange
<type ‘xrange’>#
iteritems vs viewitems#
<type ‘dict_items’>#
<type ‘dictionary-valueiterator’>#
变量#
全局变量#
a = 3
def func():
print(a)
func()在 Python 中,a=3 定义了全局变量 a,作用域从定义处到代码结束,在 a=3 以下的函数中是可以引用全局变量 a 的。
但如果要修改函数中与全局变量同名的变量,则函数中的该变量就会变成局部变量, 在修改之前对该变量的引用自然会出现未分配或未定义的错误了。
a = 3
def func():
# 如果确定要引用并修改全局变量必须加上 global 关键字
global a
print (a)
a=a+1
func()尾递归#
Python 解释器不支持尾递归优化
参考:
叶王 © 2013-2026 版权所有。如果本文档对你有所帮助,可以请作者喝饮料。