#!/usr/bin/python
 #encoding=utf-8

 def back():
     return 1,2, "xxx"

 #python 可变参数
 def test(*param):
     print "参数的长度是:%d" % len(param)
     print "第二个参数是:%s"  % param[1]
     print "第一个参数是:%s"  % param[0]

 test(1, ')
 #test((22, 'xxfff'))
 #可变参数结合关键字参数  python2.x 是不允许的,python3.x是ok的
 def test2(*param, exp=0):
     print  "参数的长度是:%d" % len(param)
     print "第二个参数是:%s"  % param[1]
     print "第一个参数是:%s"  % param[0]

 test2(6, "xxx", 9, 'xxx', exp=20)
 #test2(6, "xxx", 9, 'xxx')

 #函数内部修改全局变量
 #必须使用关键字global
 #否则,函数内部会生成一个同名的局部变量
 #切记,切记

 #内部/内嵌函数
 #fun2是内嵌/内部函数
 def fun1():
     print "fun1 calling now...."
     def fun2():
         print "fun2 calling now..."
     fun2()

 fun1()

 def  Funx(x):
     def Funy(y):
         return x*y
     return Funy     #返回函数这一对象(函数也是对象)

 i = Funx(5)
 i(8)

 def Fun1():
     x = 3
     def Fun2():
         nonlocal x
         x* = x
         return x
     return Fun2()

 Fun1()

 #!/usr/bin/python
 #encoding=utf-8

 #python3
 """
 def fun1():
     x = 9
     def fun2():
         nonlocal x
         x *= x
         return x
     return fun2()

 fun1()
 """
 #python2
 def fun3():
     x = [9]
     def fun5():
         x[0]*=x[0]
         return x[0]
     return fun5()

 fun3()
 #!/usr/bin/python
 #encoding=utf-8

 def ds(x):
     return 2*x +1

 #x相当于函数的参数,冒号后面相当于函数的返回值
 g = lambda x: 2*x + 1
 g(5)        #lambda的使用

 g1 = lambda x,y: x+y 

 #eif:内置函数
 list(filter(None, [1, 0, False, True]))
 #[1, True]

 def odd(x):
     return x%2 

 temp = range(10)    #可迭代对象
 list(filter(odd, temp))
 #等价于
 list(filter(lambda x:x%2, range(10)))

 #map
 list(map(lambda x: x*2, range(10)))

python 内部函数,以及lambda,filter,map等内置函数的更多相关文章

  1. Python自动化运维之5、内置函数

    python3.x内置函数 官网详解 一些例子:后期慢慢接触到再补充 # help() 详细查看某个类有那些方法或者方法的具体使用 >>> help(str) >>> ...

  2. Python基础学习参考(三):内置函数

    一:内置函数 在第一篇文章中,我们简单的认识了一下print()函数和input()函数,也就是输入和输出,这些函数我们可以直接的调用,不要自己定义或者引入什么,对吧?想这样的函数就叫做内置函数.这里 ...

  3. [转]Python 中的 lambda,filter,map,reduce,apply

    1. lambda 1. 基本形式: 函数名=lambda args1,args2,...,argsn:expression与C语言中的宏定义类似 2. Code isodd = lambda x: ...

  4. [Python笔记]第四篇:内置函数

    本篇主要内容:内置函数 函数 参考:https://docs.python.org/3.5/library/functions.html 内置函数列表 一.数学运算类 abs(x)求绝对值 >& ...

  5. Python 第三篇(下):collections系列、集合(set)、单双队列、深浅copy、内置函数

     一.collections系列: collections其实是python的标准库,也就是python的一个内置模块,因此使用之前导入一下collections模块即可,collections在py ...

  6. Python常用模块中常用内置函数的具体介绍

    Python作为计算机语言中常用的语言,它具有十分强大的功能,但是你知道Python常用模块I的内置模块中常用内置函数都包括哪些具体的函数吗?以下的文章就是对Python常用模块I的内置模块的常用内置 ...

  7. Python【map、reduce、filter】内置函数使用说明(转载)

    转自:http://www.blogjava.net/vagasnail/articles/301140.html?opt=admin 介绍下Python 中 map,reduce,和filter 内 ...

  8. map内置函数、lambda表达式、快捷生成想要的列表、filter内置函数

      map函数                             语法 map(function, iterable, ...) 参数 function -- 函数,有两个参数 iterable ...

  9. python学习-day16:函数作用域、匿名函数、函数式编程、map、filter、reduce函数、内置函数r

    一.作用域 作用域在定义函数时就已经固定住了,不会随着调用位置的改变而改变 二.匿名函数 lambda:正常和其他函数进行配合使用.正常无需把匿名函数赋值给一个变量. f=lambda x:x*x p ...

随机推荐

  1. mybatis- spring 批量实现数据导入数据库

    终于实现了ibatis的批量插入,此方法插入3000条数据,比单条插入可以节省一半的时间XML代码: <insert id="insertBatch" parameterTy ...

  2. java.lang.NoClassDefFoundError: Lorg/slf4j/Logger;

    如果你出现类似如下错误 1. Install tomcat7 in my home directory and set up `CATALINA_HOME` environment variable ...

  3. 【Java EE 学习 71 上】【数据采集系统第三天】【增加页面】【增加问题】【编辑页面,编辑问题】

    增加页面和编辑页面.增加问题和编辑问题的页面使用的都是相同的页面,最后调用的方法是saveOrUpdate方法,所以只说一个就可以了. 一.增加页面 比较简单,略.流程如下: 单击“增加页”超链接-& ...

  4. MYSql存储过程的作用及语法

    1.使用了存过程,很多相似性的删除,更新,新增等操作就变得轻松了,并且以后也便于管理! 2.存储过程因为SQL语句已经预编绎过了,因此运行的速度比较快. 3.存储过程可以接受参数.输出参数.返回单个或 ...

  5. JQuery 层次选择器

    <!DOCTYPE HTML> <html> <head> <title> 使用jQuery层次选择器 </title> <scrip ...

  6. KM算法

    链接: http://blog.csdn.net/lvshubao1314/article/details/41702291 

  7. 使用 TC 对LInux中vpn 上传下载进行限速(转)

    TC 无需安装,Linux 内核自带 例:将vpn IP地址段192.168.1.0/24 上传下载限速为 5M 将以下内容添加到/etc/ppp/ip-up文件exit 0上面. down=5Mbi ...

  8. STORM_0007_Multi-Lang protocol of Storm/多语言协议的翻译

    原始地址: http://storm.apache.org/releases/1.0.1/Multilang-protocol.html 这个协议试用0.7.1之后的版本   通过ShellBolt和 ...

  9. JAVA 打印指定月份日历

    package learnExercise; import java.util.Scanner; public class PrintCalender { /** * @param args */ p ...

  10. Scala Error: error while loading Suite, Scala signature Suite has wrong version expected: 5.0 found: 4.1 in Suite.class

    准备给scala项目引入单元测试 <dependency> <groupId>org.scalatest</groupId> <artifactId>s ...