美文网首页
Python入门三

Python入门三

作者: 陈洪瑜 | 来源:发表于2017-11-29 16:54 被阅读6次

    收集参数又叫可变参数。仅需在参数前边加上星号(*)即可。除了打包外还可以解包,解包指的是对实际参数的解包,只需在前面加一个*即可,如test(*a)。

    Python的所有函数都是有返回值的。

    在定义元组时,有时候不需要加小括号。因为逗号才是关键。且在函数的返回值中,返回值不一定全为整型,也可以为其他形式,还可以为列表,元组。

    在函数里边定义的参数以及变量都称为局部变量,函数里边可以包含全局变量,但不要试图在函数中改变全局变量,因为Python会自动在函数内新建一个名字一样的局部变量代替。而且修改的结果只会修改到局部变量,而不会影响到全局变量。如果必须改变可以使用global函数。

    内部函数的作用于就在外部函数之内。

    闭包closure--函数式编程,在Python中指的是如果在一个内部函数中,对外部作用域(但不是全局作用域)的变量进行引用,这个内部函数就称为闭包。内部函数仍然不能修改外部调用参数。与global函数一样,如果必须修改外部的被调用参数,可以使用nonlocal函数。

    lambda表达式创建匿名函数,很好用。

    两个BIF:filter()和map()  用法分别如下:list(filter(lambda x : x % 2,range(10)))   list(map(lambda x : x * 2,range(10)))

    递归,原理上讲就是函数内部调用自身的一个行为(感觉就相当于无限循环一样),在Python中可以通过以下设定:

    >>> import sys

    >>> sys.setrecursionlimit(1000)   #将递归限制设置为1000层。同时Ctrl+C可以终止程序,避免Python崩溃。

    相关文章

      网友评论

          本文标题:Python入门三

          本文链接:https://www.haomeiwen.com/subject/qfaybxtx.html