Python3中常用的内置函数

技术交流QQ群:1027579432,欢迎你的加入!

1.内置函数的查找

  • 内置函数都定义在一个叫builtins模块中,此模块默认在python环境启动的时候就自动导入,可以直接使用这些函数,不用import 模块名。
  • globals():列出当前环境下所有的全局变量


    globals函数
  • 查看builtins模块中定义的函数:


    builtins模块
  • abs():绝对值函数。注意:内置函数是可以被赋值给其他变量的,同样也可以将其他对象赋值给内置函数,这时就完全变了。所以,内置函数不是Python关键字,要注意对它们的保护,不要使用和内置函数重名的变量名,这会让代码混乱,容易发生难以排查的错误
    abs函数
  • all():接收一个可迭代对象,如果对象里的所有元素的bool运算值都是True,那么返回True,否则False。相当是与的作用


    all函数
  • any:接收一个可迭代对象,如果迭代对象里有一个元素的bool运算值是True,那么返回True,否则False;与all()是一对兄弟。相当于或的作用


    any函数
  • ascii():调用对象的__repr__()方法,获得该方法的返回值。__repr__()方法是由对象所属类型实现的方法,不可以简单地理解为print或echo


    ascii函数
  • bin()、oct()、hex():三个函数是将十进制数分别转换为2/8/16进制


    进制转换函数
  • bool():测试一个对象或表达式的执行结果是True还是False。实际上bool是一个类,不是函数,bool()的返回值是一个布尔类型的实例。builtins中的很多函数,其实都是类,比如bytes(),str()等等。只是因为称呼的习惯,我们叫它函数,严格意义上说,这是不对的。


    bool函数
  • bytearray():实例化一个bytearray类型的对象。参数可以是字符串、整数或者可迭代对象。bytearray是Python内置的一种可变的序列数据类型,具有大多数bytes类型同样的方法。
    • 当参数是字符串的时候,需要指定编码类型。
    • 当参数是整数时,会创建以该整数为长度,包含同样个数空的bytes对象的数组。
    • 当参数是个可迭代的对象时,该对象必须是一个取值范围0 <= x < 256的整数序列。


      bytearray函数
  • bytes():将对象转换成字节类型。例如,s = '张三';m = bytes(s,encoding='utf-8')


    bytes函数
  • str():将对象转换成字符串类型,同样也可以指定编码方式。例如,str(bytes对象,encoding='utf-8')。bytes和str之间的互相转换,更多使用的是encode()和decode()方法。


    str函数
  • callable():判断对象是否可以被调用。如果某个对象具有__call__方法,那它就能被调用。


    callable
  • chr():返回某个十进制数对应的ASCII字符,例如:chr(99) = ‘c’。它可以配合random.randint(65,91)随机方法,生成随机字符,用于生产随机验证码。


    chr函数
  • ord():与chr()相反,返回某个ASCII字符对应的十进制数,例如,ord('A') = 65


    ord函数
  • classmethod()、staticmethod()和property():在类中使用的方法,用于生成类的方法、静态方法和属性的函数。
  • compile():将字符串编译成Python能识别或执行的代码,也可以将文件读成字符串再编译。


    compile函数
  • complex():通过数字或字符串生成复数类型对象,使用字符串的时候,+号左右不能有空白。


    complex函数
  • delattr()、setattr()、getattr()、hasattr():类机制中,分别用来删除、设置、获取和判断属性。
  • dir():显示对象所有的属性和方法。
    dir函数
  • int()、float()、list()、dict()、set()、tuple():与bool()、str()、bytes()一样,它们都是实例化对应数据类型的类。
  • divmod():除法,同时返回商和余数的元组。
    divmod函数
  • enumerate():在迭代对象的时候,额外提供一个序列号的输出。注意:enumerate(li,1)中的1表示从1开始序号,默认从0开始。注意,第二个参数才是你想要的序号开始,不是第一个参数。通常用于对那些无法提供序号的迭代对象使用。但对于字典,依然是无序的。
    enumerate函数
  • eval():将字符串直接解读并执行。例如:s = "6*8",s是一个字符串,d = eval(s), d的结果是48。


    eval函数
  • exec():执行字符串或compile方法编译过的字符串,没有返回值。


    exec函数
  • format():执行format(),其实就是调用该对象所属类的__format__方法,类似print功能。


    format函数
  • frozenset():返回一个不能增加和修改的集合类型对象
    frozenset函数
  • hash():为不可变对象(整数、字符串、元组等),例如字符串生成哈希值的函数。


    hash函数
  • help():返回对象的帮助文档
    help函数
  • id():返回对象的内存地址,常用来查看变量引用的变化,对象是否相同。
    id函数
  • input():接收用户输入,返回一个输入的字符串
    input函数
  • isinstance():判断一个对象是否是某个类的实例,比type()方法适用面更广。
    isinstance函数
  • issubclass():issubclass(a,b),判断a是否是b的子类。


    issubclass函数
  • iter():制造一个迭代器,使其具备next()能力。


    iter函数
  • len():返回对象的长度
  • locals():返回当前可用的局部变量


    locals函数
  • max()/min():返回给定集合里的最大或者最小的元素,可以指定排序的方法
    max_min函数
  • memoryview(obj):返回obj的内存视图对象。obj只能是bytes或bytesarray类型
    memoryview函数
  • next():通过调用迭代器的在__next__()方法,获取下一个元素
  • object():该方法不接收任何参数,返回一个没有任何功能的对象。object是Python所有类的基类。
  • open():打开文件的方法。在Python2里,还有一个file()方法,Python3中被废弃了。
  • pow():幂函数 pow(3, 2) 结果是9
  • repr():调用对象所属类的__repr__方法,与print功能类似。


    repr函数
  • reversed():反转,逆序对象。


    reversed函数
  • round():四舍五入


    round函数
  • slice():返回一个切片类型的对象。slice是一个类,一种Python的数据类型。Python将对列表等序列数据类型的切片功能单独拿出来设计了一个slice类,可在某些场合下使用。


    slice函数
  • sum():求和


    sum函数
  • super():调用父类。面向对象中类的机制相关。
  • type():显示对象所属的数据类型。
  • vars():与dir()方法类似,不过dir()方法返回的是key,vars()方法返回key的同时还把value一起打印了
    vars函数
  • map():映射函数。使用指定的函数,处理可迭代对象,并将结果保存在一个map对象中,本质上和大数据的mapreduce中的map差不多。使用格式:obj = map(func, iterable),func是某个函数名,iterable是一个可迭代对象。
    map函数
  • filter():过滤器,用法和map类似。在函数中设定过滤的条件,逐一循环对象中的元素,将返回值为True时的元素留下(注意,不是留下返回值!),形成一个filter类型的迭代器
    filter函数1

    filter函数2
  • zip():组合对象,将对象逐一配对。
    zip函数1

    zip函数2
  • 如果对象的长度不一致,多余的会被抛弃,以最短的为基础!
    zip函数3
  • sorted():排序方法,有key和reverse两个重要参数。
  • 基础用法: 直接对序列进行排序


    sorted函数1
  • 指定排序的关键字:关键字必须是一个可调用的对象。例如下面的例子,规则是谁的绝对值大,谁就排在后面。
    sorted函数2
  • 指定按反序排列:下面的例子,首先按忽略大小写的字母顺序排序,然后倒序排列。


    sorted函数3
  • __import__(name):这个方法为我们提供了一种通过字符串反射包、库或模块的手段。其中的name是你想要导入的库的名称的字符串。下面的例子中,利用字符串“time”,导入了实际的time库,并赋值给t变量。这个变量实际就相当于import time的结果。然后使用t.time()进行调用。在某些场景下,这个方法非常有用。但是很多时候,它也存在安全问题,Python官方不建议经常使用它。
    __import__函数

2.参考博客

  • 刘江的博客

你可能感兴趣的:(Python3中常用的内置函数)