Python:重要的内置函数(Build-in Function)

Writen By Lindsay On Apr 25, 2018

build in function

只讲一些我觉得重要的函数

all() 和 any()

从名字就可以看出其作用,接受一个可迭代对象,当内部元素全部可以表示为真时, all() 返回True,当任何一个元素可以表示为真时, any() 返回 True

chr() 和 ord()

前者接受一个整数,返回一个相应 ascii 编码的字符,不在 range(0x110000) 范围内时会抛出错误,后者为前者的逆操作,只接受包含一个字符的字符串。它们容易和ascii() 函数混淆,ascii() 函数的作用与py2中的 repr() 函数相同,返回一个不包含非 ascii编码的类型描述

classmeshod() 和 staticmethod()

这两个函数为修饰器,它们有相似的地方,被修饰的函数可以不用实例化即可调用,也就是说,可以直接使用类名调用被这两个函数修饰的函数。这两者的区别是,前者需要传递一个作为这个类的参数(不是 self ),通过这个被传递的参数,可以修改一些类的内部变量,而后者没有这个功能。

property()

用于设置类的 setter()  getter() deller() 函数,有两种使用方法,首先是传入参数,使之成为类内部的一个属性

class C:
        def __init__(self):
            self._x = None
            def getx(self):
            return self._x

        def setx(self, value):
            self._x = value

        def delx(self):
            del self._x

        x = property(getx, setx, delx, "I'm the 'x' property.")

通过调用 c.x 或者 c.x=value  del c.x 来使用这些函数 另一种方法是将这个函数作为修饰器使用

class C:
        def __init__(self):
            self._x = None
        @property
        def x(self):
            """I'm the 'x' property."""
            return self._x
        @x.setter
        def x(self, value):
            self._x = value
        @x.deleter
        def x(self):
            del self._x

 

enumerate()

接受一个单值的可迭代对象,如list set ,返回一个元素为下标和值组成的的元组 的生成器,常用作需要索引的 list 迭代

iter()

返回一个迭代器,当迭代到的对象返回的值与第二个可选的参数相等时,抛出一个 IteratorStop 错误

zip()

这个没什么好说的,最开始学的几个 python 函数之一,除了组包以外,还可以对zip对象进行解包

isinstance()   issubclass()

用来判断实例关系和继承关系   其他函数大都可以从字面意思看出其作用,不继续解释了