zoukankan      html  css  js  c++  java
  • day③: python 内置函数


    all():全部为真,才为真。
    any(): 其中一个为真,就为真
    bin():表示二进制
    bytearray(): 转化为字节数组(py3)
    byte():转化为字节字符串(py3)
    callable(): 检查对象object是否可调用.
    ord():ASCII码转数字
    chr():数字转ASCII码
    dir(): 返回任意对象的属性和方法列表
    input(): 期望用户输入的是一个有效的表达式
    raw_input(): 将用户的输入包装成一个字符串
    hex():转化为16进制
    help(sys) # 交互式帮助
    int(obj) # 转型为整形
    str(obj) # 转为字符串
    len(obj) # 返回对象或序列长度
    oct():8进制
    open(file,mode) # 打开文件 #mode (r 读,w 写, a追加)
    range(0,3) # 返回一个整形列表
    raw_input("str:") # 等待用户输入
    type(obj) # 返回对象类型
    abs(-22) # 绝对值
    random # 随机数
    choice() # 随机返回给定序列的一个元素
    divmod(x,y) # 函数完成除法运算,返回商和余数。
    round(x[,n]) # 函数返回浮点数x的四舍五入值,如给出n值,则代表舍入到小数点后的位数
    strip() # 是去掉字符串两端多于空格,该句是去除序列中的所有字串两端多余的空格
    del # 删除列表里面的数据
    cmp(x,y) # 比较两个对象 #根据比较结果返回一个整数,如果x<y,则返回-1;如果x>y,则返回1,如果x==y则返回0
    max() # 字符串中最大的字符
    min() # 字符串中最小的字符
    sorted() # 对序列排序
    reversed() # 对序列倒序
    enumerate() # 返回索引位置和对应的值
    sum() # 总和
    super(): 通过子类访问父类的方法
    list() # 变成列表可用于迭代
    eval('3+4') # 将字符串当表达式求值 得到7
    exec 'a=100' # 将字符串按python语句执行
    exec(a+'=new') # 将变量a的值作为新的变量
    tuple() # 变成元组可用于迭代 #一旦初始化便不能更改的数据结构,速度比list快
    zip(s,t) # 返回一个合并后的列表  s = ['11','22'] t = ['aa','bb']   结果: [('11', 'aa'), ('22', 'bb')]
    isinstance(object,int) # 测试对象类型 int 
    xrange([lower,]stop[,step]) # 函数与range()类似,但xrnage()并不创建列表,而是返回一个xrange对象

    (1)lambda 
    简单函数的表示方式
    1. #普通函数
    2. def func(arg):
    3. return arg + 1
    4. result= func(123)
    5. print result
    6. print(" ")
    7. #lambda
    8. my_lambda = lambda arg:arg + 1
    9. result = my_lambda(123)
    10. print result
    11. 结果:
    12. 124
    13. 124


    (2) map
    map(...)
        map(function, sequence[, sequence, ...]) -> list
    #遍历序列,对序列中每个元素进行操作,最终获取新的序列。
    # 将函数func作用于给定序列(s)的每个元素,并用一个列表来提供返回值;如果func为None,func表现为一个身份函数,返回一个含有每个序列中元素集合的n个元组的列表

    例子:
    1. #每个元素增加100
    2. li=[11,22,33]
    3. new_list=map(lambda a:a+100,li)
    4. print new_list
    5. print ""
    6. #两个列表对应元素相加
    7. li=[11,22,33]
    8. sl=[1,2,3]
    9. new_list=map(lambda a,b:a+b,li,sl)
    10. print new_list
    11. print ""
    12. ##
    13. def cube(x): return x*x*x
    14. range(1,11)
    15. print map(cube,range(1,11))
    16. #结果
    17. [111, 122, 133]
    18. [12, 24, 36]
    19. [1, 8, 27, 64, 125, 216, 343, 512, 729, 1000]


    (3)filter
    filter(...)
        filter(function or None, sequence) -> list, tuple, or string
    #对于序列中的元素进行筛选,最终获取符合条件的序列
    #调用一个布尔函数func来迭代遍历每个seq中的元素;返回一个使func返回值为true的元素的序列

    例子:
    1. #获取列表中大于12的所有元素集合
    2. li=[11,22,33,1,34,5,63,40]
    3. new_list=filter(lambda arg:arg>22,li)
    4. print new_list
    5. print ""

    6. #获取列表中可以被2和3整除的所有元素集合
    7. f=lambda x:x%2 ==0 and x%3 ==0
    8. print filter(f,range(2,25))
    9. 结果:
    10. [33, 34, 63, 40]
    11. [6, 12, 18, 24]


    (4)reduce
    reduce(...)
        reduce(function, sequence[, initial]) -> value
    #对于序列内所有元素进行累计操作
    #将二元函数作用于seq序列的元素,每次携带一堆(先前的结果以及下一个序列元素),连续地将现有的结果和下一个值作用在获得的随后的结果上,最后减少我们的序列为一个单一的返回值;如果初始值init给定,第一个比较会是init和第一个序列元素而不是序列的头两个元素

    例子:
    1. result=reduce(lambda x,y:x+y,range(1,11))
    2. print result
    3. #结果
    4. 55




    end




  • 相关阅读:
    日历(Calendar)模块
    关于Python3中函数:
    正则表达式全集
    python同时遍历两个list
    Python 类
    vs_code 快捷键
    Linux常用命令大全
    Linux基础命令sort
    Linux基础命令练习题答案7.10
    Linux基础命令练习题7.10
  • 原文地址:https://www.cnblogs.com/binhy0428/p/b8e99558cc807b2cfd6505640a1764a2.html
Copyright © 2011-2022 走看看