Python - zip、lambda、map

这里整理下Python中zip、lambda和map函数的用法(●ˇ∀ˇ●)

zip()迭代器

  • zip()语法
  • iterabl : 一个或多个迭代器
    zip([iterable, ...])
  • 利用zip()对列表进行合并
    a = [1,2,3]
    b = [4,5,6]
    print(list(zip(a,b)))           #用zip()函数将a,b合并
    
    for i,j in zip(a,b):            #将合并后每个a,b元素分别迭代给i,j
        print(i/2,j*2)              #i除2,j乘2
    
    print(list(zip(a,a,b)))         #可重复合并

lambda()匿名函数

  • lambda()语法
    lambda [arg1 [,arg2,.....argn]]:expression
  • 利用lambda()对函数进行简化
    def fun1(x,y):                  #普通函数
        return(x+y)
    print (fun1(1,2))
    
    fun2 = lambda x,y : x+y         #lambda的简易函数
    print (fun2(11,2))
  • lambda()只是一个表达式,函数体比def()简单很多。
  • lambda()的主体是一个表达式,而不是一个代码块。仅仅能在lambda表达式中封装有限的逻辑进去。
  • lambda()函数拥有自己的命名空间,且不能访问自有参数列表之外或全局命名空间里的参数。
  • 虽然lambda函数看起来只能写一行,却不等同于C或C++的内联函数,后者的目的是调用小函数时不占用栈内存从而增加运行效率。

map()函数

  • map()函数语法
  • function : 函数
  • iterable : 一个或多个序列
    map(function, iterable, ...)
  • map直接调用函数
    a = list(map(fun1,[1],[2]))     #直接调用fun1,[1]是参数x,[2]是参数y
    b = list(map(fun1,[1,4],[2,5])) #[1,4]是参数x,[2,5]是参数y,分别用[1,4]的1加[2,5]的2,[1,4]的4加[2,5]的5
    print(a)                        #返回一个列表
    print(b)                        #返回一个列表
本文为作者Urban-Ash发布,未经允许禁止转载!
71
0
0
发表留言

编程
Python - zip、lambda、map
这里整理下Python中zip、lambda和map函数的用法(●ˇ∀ˇ●)...
扫描右侧二维码继续阅读
June 17, 2020
Urban-AshのBlog
blogger
urban-ash
ようこそ - 我がBlogへ ! ! !
统计
文章:28 篇
分类:3 个
评论:13 条
运行时长:0年146天
by yoniu.

Urban-AshのBlog