zoukankan      html  css  js  c++  java
  • Python 几个常见函数

    本文主要总结常见的函数知识点。

    1、zip函数

    用来并行迭代,可以把两个序列并在一起,然后返回一个元组的列表

    names = ['Ann','Jame','Anla']
    ages = [11,12,14]
    
    print(zip(names,ages))  #[('Ann', 11), ('Jame', 12), ('Anla', 14)]
    #zip可以出来不等长的序列,当最短的序列“用完”的时候就会停止
    #range会计算所有的数字,xrange就没这个问题,它只计算前5个数字
    print(zip(range(3),xrange(1000)))  #[(0, 0), (1, 1), (2, 2)]

    2、enumerate函数

    用于将一个可遍历的数据对象(如列表、元组或字符串)组合成一个索引序列,同事列出数据和数据下标,一般用在for循环当中。

    seasons = ['Spring','Summer','Fall','Winter']
    print(list(enumerate(seasons))) #[(0, 'Spring'), (1, 'Summer'), (2, 'Fall'), (3, 'Winter')]
    print(list(enumerate(seasons,start=1))) #[(1, 'Spring'), (2, 'Summer'), (3, 'Fall'), (4, 'Winter')]
    for i,element in enumerate(seasons):
        print i,element

    3、exec语句 和 eval语句

    exec语句会执行存在在字符串中的python代码;

    eval语句会计算python表达式(以字符串形式书写)并且返回结果值;

    exec("print('hello,world')")  #hello,world
    
    print(eval("6+18*2")) #42
    #eval(raw_input(prompt))等同于input()
    a = input("enter expression:") #1+2
    print(a) #3

    4、map函数

    map(func,seq[,seq,...]) 对序列中的每个元素应用函数。

    filter(func,seq) 返回其函数为真的元素的列表

    reduce(func,seq[,seq,...]) 等同于 func(func(func(seq[0],seq[1]),seq[2]),...),它会将序列的前两个元素与给定的函数联合使用,并且将他们的返回值和第三个元素继续联合使用,直到整个序列都处理完毕,并且得到一个最终结果。

    #等同于str(i) for i in range(5)
    print(map(str,range(5)))  #['0', '1', '2', '3', '4']
    print(map(sqrt, [4,9]))  #[2.0, 3.0]
    
    print(filter(None, [1,0,2])) #[1, 2]
    
    print(reduce(lambda x,y:x+y, [1,2,3,4,5])) #15

    注:map和filter函数一般可以使用列表推导式代替。

    持续学习、更新中...

  • 相关阅读:
    Run UliPad 4.1 Under Windows 7 64bit and wxPython 3.0.2
    Ubuntu下编译SuiteSparse-4.4.1和METIS-4.0.3
    Call Paralution Solver from Fortran
    Python调用C/Fortran混合的动态链接库-下篇
    调用gluNurbsCurve绘制圆弧
    glutBitmapCharacter及glBitmap在ATI显卡下无法正常显示的原因初探
    PyOpenGL利用文泉驿正黑字体显示中文字体
    图论常用算法之二 算法模板及建模总结
    图论常用算法之一 POJ图论题集【转载】
    通过身边小事解释机器学习是什么?
  • 原文地址:https://www.cnblogs.com/susan-su/p/10722198.html
Copyright © 2011-2022 走看看