• Python-内建函数


    内置参数详解 https://docs.python.org/3/library/functions.html?highlight=built#ascii 

     标识 id(): 返回对象的唯一标识,CPython返回内存地址。

    哈希 hash():返回一个对象的哈希值

    类型 type():返回对象的类型

    类型转换:float() ,int() ,bin() hex() ,oct() ,bool() ,list() ,tuple() ,dict() ,set() ,complex(), bytes(),bytearray()

    输入:input(),返回字符串

    打印:print(*obj , sep=' ' , end=' ' )

     对象长度:len(s) 返回一个集合类型的元素个数

    isinstance(obj, class_or_tuple): 对象 是否是属于某种类型

       isinstance(True, int) ------> True

    issubclass( cls, class_or_tuple) : 判断类型 cls 是否是某种类型的自乐你或元组中列出的某个类型的子类

      issubclass(bool , int)

     绝对值 abs()

    最值:min(iterable) max()

     round(x) :四舍六入五取偶

    range():

    divmod(x,y) : 返回元组(x//y, x %y)

     sum(irterable , base):a = sum(range(5),2) # 12 = 10 + 2

     chr() :给定一个一定范围的整数返回对应的字符,chr(97) chr(20013) chr(22269)

    ord():返回字符对应的整数

    str(),

    repr()

    ascii() 

     sorted(iterable [, key] [ ,reverse]) 排序,返回一个新列表,默认升序,默认升序,reverse=True 降序

    翻转 reversed(seq) 返回一个翻转元素的迭代器 ,不会吧原数据翻转,只是需要的时候,按照顺序拿

    1 { reversed((2,3))} ----> 字典中一个元素(迭代器)

     枚举 enumerate( seq, start=0) : 迭代一个序列,返回索引数字和元素构成的二元组,start 表示索引的开始数字,默认是0.

    迭代器和取元素 iter( iterable ) , next( iterator [, default ])

        iter 将一个 可迭代对象封装成一个迭代器,

        next 对一个迭代器取下一个元素,如果全部元素都取过了,再次next 会抛StopIteration 异常,但是next()可以给定默认值,如果超界,输出默认值。

        如果iter() 括号里 是一个可迭代对象,则成为可迭代器,如果是迭代器,则iter() 什么都不做。

        

     1、可迭代对象 :

        可迭代对象:

        • 能够通过迭代一次次返回不同的元素的对象
          • 所谓相同,不是指值是否相同,而是元素在容器中是否是同一个,例如列表总值可以重复的,[ 'a','a','a'],虽然这个列表有三个元素,值一样,但是三个'a'是不同的元素,因为索引不同。
        •  可以迭代,但是未必有序,未必可索引,如:set
        • 可迭代对象有:list,tuple,set,string bytes,bytearray,range,dict,生成器等
        • 可以使用成员操作符 in   , not in,in本质上就是在遍历对象。
    1 a =  {a:b for a,b in zip(range(4),range(4, 10))}
    2 print(a) # {0: 4, 1: 5, 2: 6, 3: 7}
    3 
    4 b = zip(range(4), range(5))
    5 nex() # (0,0) 二元组 一直到(4,4)
    6 
    7 c = zip(range(4),range(20),'dsadasd')
    8 next() # 最后一个输出(3, 3, 'd')

        迭代器:

        • 特殊的对象,一定是可迭代对象,具备可迭代对象的特征
        • 通过iter() 方法,把一个可迭代对象封装成迭代器
        • 通过next() 方法,迭代  迭代器对象
        • 生成器对象,就是迭代器对象

    拉链函数 zip(*iteable):

        就像拉链一样,把多个可迭代对象合并在一起,返回一个迭代器

        将每次从不同对象中取到的元素合并成一个元组

    1 a =  {a:b for a,b in zip(range(4),range(4, 10))}
    2 print(a) # {0: 4, 1: 5, 2: 6, 3: 7}
    3 
    4 b = zip(range(4), range(5))
    5 nex() # (0,0) 二元组 一直到(4,4)
    6 
    7 c = zip(range(4),range(20),'dsadasd')
    8 next() # 最后一个输出(3, 3, 'd')
    1 a = zip(range(4)) # 一个iterable的话,返回单元组
    2 print(a)
    3 print(next(a))
    4 
    5 # <zip object at 0x00000000027265C8>
    6 # (0,)
    为什么要坚持,想一想当初!
  • 相关阅读:
    软件原则
    Optional
    雪花算法原理
    AOP
    trycatchfinally
    lambda表达式
    BeanUtils属性转换工具
    @Transactional 失效
    用户线程&&守护线程
    卡顿问题
  • 原文地址:https://www.cnblogs.com/JerryZao/p/9493358.html
Copyright © 2020-2023  润新知