zoukankan      html  css  js  c++  java
  • python学习之内置函数(一)

    4.7 内置函数

    4.7.1 内置函数(1)

    eval

    执行字符串类型的代码,并返回最终结果。

    eval('2 + 2')  # 4
    n=81
    eval("n + 4")  # 85
    eval('print(666)')  # 666
    
    exec

    执行字符串类型的代码。

    s = '''
    for i in [1,2,3]:
        print(i)
    '''
    exec(s)
    
    hash

    获取一个对象(可哈希对象:int,str,Bool,tuple)的哈希值。

    print(hash(12322))
    print(hash('123'))
    print(hash('arg'))
    print(hash('alex'))
    print(hash(True))
    print(hash(False))
    print(hash((1,2,3)))
    
    '''
    -2996001552409009098
    -4637515981888139739
    1
    252850297397326415
    '''
    
    help

    函数用于查看函数或模块用途的详细说明。

    print(help(list))
    print(help(str.split))
    
    callable

    函数用于检查一个对象是否是可调用的。如果返回True,object仍然可能调用失败;但如果返回False,调用对象ojbect绝对不会成功。

    name = 'alex'
    def func():
        pass
    print(callable(name))  # False
    print(callable(func))  # True
    
    int

    函数用于将一个字符串或数字转换为整型。

    print(int())  # 0
    print(int('12'))  # 12
    print(int(3.6))  # 3
    print(int('0100',base=2))  # 将2进制的 0100 转化成十进制。结果为 4
    
    float

    函数用于将整数和字符串转换成浮点数。

    complex

    函数用于创建一个值为 real + imag * j 的复数或者转化一个字符串或数为复数。如果第一个参数为字符串,则不需要指定第二个参数。。

    print(float(3))  # 3.0
    print(complex(1,2))  # (1+2j)
    
    bin

    将十进制转换成二进制并返回。

    oct

    将十进制转化成八进制字符串并返回。

    hex

    将十进制转化成十六进制字符串并返回。

    print(bin(10),type(bin(10)))  # 0b1010 <class 'str'>
    print(oct(10),type(oct(10)))  # 0o12 <class 'str'>
    print(hex(10),type(hex(10)))  # 0xa <class 'str'>
    
    divmod

    计算除数与被除数的结果,返回一个包含商和余数的元组(a // b, a % b)。

    round

    保留浮点数的小数位数,默认保留整数。

    pow

    求x**y次幂。(三个参数为x**y的结果对z取余)

    print(divmod(7,2))  # (3, 1)
    print(round(7/3,2))  # 2.33
    print(round(7/3))  # 2
    print(round(3.32567,3))  # 3.326
    print(pow(2,3))  # 两个参数为2**3次幂
    print(pow(2,3,3))  # 三个参数为2**3次幂,对3取余。
    
    bytes

    用于不同编码之间的转化。

    # s = '你好'
    # bs = s.encode('utf-8')
    # print(bs)
    # s1 = bs.decode('utf-8')
    # print(s1)
    # bs = bytes(s,encoding='utf-8')
    # print(bs)
    # b = '你好'.encode('gbk')
    # b1 = b.decode('gbk')
    # print(b1.encode('utf-8'))
    
    ord

    输入字符找该字符编码的位置

    chr

    输入位置数字找出其对应的字符

    ord 输入字符找该字符编码的位置
    print(ord('a'))
    print(ord('中'))
    
    chr 输入位置数字找出其对应的字符
    print(chr(97))
    print(chr(20013))
    
    repr

    返回一个对象的string形式(原形毕露)

    # %r  原封不动的写出来
    name = 'taibai'
    print('我叫%r'%name)
    # repr 原形毕露
    print(repr('{"name":"alex"}'))
    print('{"name":"alex"}')
    
    all

    可迭代对象中,全都是True才是True

    any

    可迭代对象中,有一个True 就是True

    # all  可迭代对象中,全都是True才是True
    # any  可迭代对象中,有一个True 就是True
    # print(all([1,2,True,0]))
    # print(any([1,'',0]))
    

    4.7.2匿名函数lambda

    匿名函数:没有名字的函数-----但是要把它的地址交给一个变量才能执行

    匿名函数只能构建简单的函数,一句话函数

    #构建一个x+y的函数
    #普通方法
    def func(x,y):
        return x + y
    print(func(1, 2))
    # 匿名函数构建
    func2 = lambda x,y: x + y
    print(func2(1, 2))
    

    匿名函数最常用的就是与内置函数结合使用。

    # 写匿名函数:接收一个可切片的数据,返回索引为 0与2的对应的元素(元组形式)。
    func = lambda x: (x[0],x[2])
    print(func('德玛西亚'))
    
    # 写匿名函数:接收两个int参数,将较大的数据返回。
    func1 = lambda x, y: x if x > y else y
    print(func1(100,2))
    
    # func2 = lambda : 3
    # print(func2())
    

    练习

    # 写匿名函数:接收一个可切片的数据,返回索引为0与2的对应的元素(元组形式)。
    func = lambda s : (s[0],s[2])
    print(func((1,2,3,4)))
    print(func('asdfg'))
    
    # 写匿名函数:接收两个int参数,将较大的数据返回。
    func2 = lambda a,b : a if a>b else b
    print(func2(234,123))
    print(func2(234,723))
    func3 = lambda a,b : max(a,b)
    print(func3(123,234))
    

    仅供参考,欢迎指正
  • 相关阅读:
    教你写能被舒服舒服又舒服地调用的iOS库
    无比迅速敏捷地开发iOS超精美控件
    iOS中UIlabel多行文本展示使用小结
    诸葛亮诫子书
    保留开阔的心灵空间
    iOS长按手势列表拖拽功能实现
    iOS通知使用小结
    真正的成熟
    生活的常态
    记一次LNMP 502问题的解决 (Nginx 、php、php-fpm)
  • 原文地址:https://www.cnblogs.com/jjzz1234/p/11069746.html
Copyright © 2011-2022 走看看