Python中生成器,迭代器,以及一些常用的内置函数.

2020-12-13 02:55

阅读:348

  • 未来讲

    classmethod()  delattr() getattr() hasattr()  issubclass()  isinstance()  object() property()  setattr()  staticmethod()  super()

    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
    2528502973977326415
    '''

    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 
    print(oct(10),type(oct(10)))  # 0o12 
    print(hex(10),type(hex(10)))  # 0xa 

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

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

    pow:求xy次幂。(三个参数为xy的结果对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]))

  • 评论


    亲,登录后才可以留言!