1.1 语法

语法 #

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 解释器不支持尾递归优化

参考:


参考 #


本文访问量

本站总访问量

本站总访客数