zoukankan      html  css  js  c++  java
  • 内置函数

    abs():返回数字的绝对值
    all():

    参数:iterable -- 元组或列表。

    返回值:如果iterable的所有元素不为0、''、False或者iterable为空,all(iterable)返回True,否则返回False;

    注意:空元组、空列表返回值为True,这里要特别注意。

    any():

    参数:iterable -- 元组或列表。

    返回值:如果都为空、0、false,则返回false,如果不都为空、0、false,则返回true。

    ascii():函数类似 repr() 函数, 返回一个表示对象的字符串, 但是对于字符串中的非 ASCII 字符则返回通过 repr() 函数使用 x, u 或 U 编码的字符。 生成字符串类似 Python2 版本中 repr() 函数的返回值。

    In [6]: ascii("你好")

    Out[6]: "'\u4f60\u597d'"

    In [9]: ascii("hello")

    Out[9]: "'hello'"

    bin():

    参数:x -- int 或者 long int 数字

    返回值:返回一个整数 int 或者长整数 long int 的二进制表示。

    In [10]: bin(2000)

    Out[10]: '0b11111010000'

    In [11]: bin(2)

    Out[11]: '0b10'

    bool():用于将给定参数转换为布尔类型,如果没有参数,返回 False。

    In [12]: bool(0)

    Out[12]: False

    In [13]: bool(1)

    Out[13]: True

    In [14]: bool()

    Out[14]: False

    bytearray():

    class bytearray([source[, encoding[, errors]]])

    参数:

    如果 source 为整数,则返回一个长度为 source 的初始化数组;

    如果 source 为字符串,则按照指定的 encoding 将字符串转换为字节序列;

    如果 source 为可迭代类型,则元素必须为[0 ,255] 中的整数;

    如果 source 为与 buffer 接口一致的对象,则此对象也可以被用于初始化 bytearray。

    如果没有输入任何参数,默认就是初始化数组为0个元素。

    返回值:bytearray() 方法返回一个新字节数组。这个数组里的元素是可变的,并且每个元素的值范围: 0 <= x < 256

    In [16]: bytearray("你好",encoding="utf-8")

    Out[16]: bytearray(b'xe4xbdxa0xe5xa5xbd')

    In [17]: bytearray([1,2,3])

    Out[17]: bytearray(b'x01x02x03')

    bytes():

    class bytes([source[, encoding[, errors]]])

    参数:

    如果 source 为整数,则返回一个长度为 source 的初始化数组;

    如果 source 为字符串,则按照指定的 encoding 将字符串转换为字节序列;

    如果 source 为可迭代类型,则元素必须为[0 ,255] 中的整数;

    如果 source 为与 buffer 接口一致的对象,则此对象也可以被用于初始化 bytearray。

    如果没有输入任何参数,默认就是初始化数组为0个元素。

    返回值:bytes 函数返回一个新的 bytes 对象,该对象是一个 0 <= x < 256 区间内的整数不可变序列。它是 bytearray 的不可变版本。

    callable():函数用于检查一个对象是否是可调用的。如果返回True,object仍然可能调用失败;但如果返回False,调用对象ojbect绝对不会成功。对于函数, 方法, lambda 函式, 类, 以及实现了 __call__ 方法的类实例, 它都返回 True。

    In [23]: def a():

    ...: pass

    In [24]: callable(a)

    Out[24]: True

    In [25]: class A():

    ...: pass

    In [26]: callable(A)

    Out[26]: True

    In [28]: a =A()

    In [29]: callable(a)

    Out[29]: False

    chr():参数:可以是10进制也可以是16进制的形式的数字。

    返回值是当前整数对应的ascii字符。

    In [38]: chr(56)

    Out[38]: '8'

    In [39]: chr(98)

    Out[39]: 'b'

    classmethod():classmethod修饰符对应的函数不需要实例化,不需要 self 参数,但第一个参数需要是表示自身类的 cls 参数,可以来调用类的属性,类的方法,实例化对象等。

    class A(object):

    bar = 1

    def func1(self):

    print ('foo')

    @classmethod

    def func2(cls):

    print ('func2')

    print (cls.bar)

    cls().func1() # 调用 foo 方法

    A.func2() # 不需要实例化

    输出结果:

    func2

    1

    foo

    compile():compile(source, filename, mode[, flags[, dont_inherit]])

    参数:

    source -- 字符串或者AST(Abstract Syntax Trees)对象。。

    filename -- 代码文件名称,如果不是从文件读取代码则传递一些可辨认的值。

    mode -- 指定编译代码的种类。可以指定为 exec, eval, single。

    flags -- 变量作用域,局部命名空间,如果被提供,可以是任何映射对象。。

    flags和dont_inherit是用来控制编译源码时的标志

    将一个字符串编译为字节代码

    delattr():delattr(object, name)

    参数:object -- 对象。name -- 必须是对象的属性。

    delattr 函数用于删除属性。

    delattr(x, 'foobar') 相等于 del x.foobar。

    dict()

    dir()

    divmod():把除数和余数运算结果结合起来,返回一个包含商和余数的元组(a // b, a % b)。

    In [40]: divmod(7,2)

    Out[40]: (3, 1)

    enumerate():enumerate(sequence, [start=0])

    参数:

    enumerate() 函数用于将一个可遍历的数据对象(如列表、元组或字符串)组合为一个索引序列,同时列出数据和数据下标,一般用在 for 循环当中。

    In [41]: seq = ['one', 'two', 'three']

    In [43]: for k ,v in enumerate(seq):

    ...: print(k)

    ...: print(v)

    ...:

    0

    one

    1

    two

    2

    three

    eval():eval(expression[, globals[, locals]])

    参数:

    expression -- 表达式。

    globals -- 变量作用域,全局命名空间,如果被提供,则必须是一个字典对象。

    locals -- 变量作用域,局部命名空间,如果被提供,可以是任何映射对象。

    In [44]: x = 4

    In [45]: eval("3*x")

    Out[45]: 12

    exec():exec(object[, globals[, locals]])

    参数:

    object:必选参数,表示需要被指定的Python代码。它必须是字符串或code对象。如果object是一个字符串,该字符串会先被解析为一组Python语句,然后在执行(除非发生语法错误)。如果object是一个code对象,那么它只是被简单的执行。

    globals:可选参数,表示全局命名空间(存放全局变量),如果被提供,则必须是一个字典对象。

    locals:可选参数,表示当前局部命名空间(存放局部变量),如果被提供,可以是任何映射对象。如果该参数被忽略,那么它将会取与globals相同的值。

    exec 执行储存在字符串或文件中的 Python 语句,相比于 eval,exec可以执行更复杂的 Python 代码。

    filter():函数用于过滤序列,过滤掉不符合条件的元素,返回一个迭代器对象,如果要转换为列表,可以使用 list() 来转换。

    该接收两个参数,第一个为函数,第二个为序列,序列的每个元素作为参数传递给函数进行判,然后返回True或False,最后将返回True的元素放到新列表中。

    返回值:返回一个迭代器对象

    过滤出1~100中平方根是整数的数:

    import math

    def is_sqr(x):

    return math.sqrt(x) % 1 == 0

    tmplist = filter(is_sqr, range(1, 101))

    newlist = list(tmplist)

    print(newlist)

    float()

    format()

    frozenset():class frozenset([iterable])

    参数:iterable -- 可迭代的对象,比如列表、字典、元组等等。

    返回值:返回新的 frozenset 对象,如果不提供任何参数,默认会生成空集合。

    In [1]: frozenset(range(1,10))

    Out[1]: frozenset({1, 2, 3, 4, 5, 6, 7, 8, 9})

    In [2]: frozenset("awdadawgff")

    Out[2]: frozenset({'a', 'd', 'f', 'g', 'w'})

    getattr():getattr(object, name[, default])

    参数:

    object -- 对象。

    name -- 字符串,对象属性。

    default -- 默认返回值,如果不提供该参数,在没有对应属性时,将触发 AttributeError。

    返回值:返回对象属性值。

    globals():globals() 函数会以字典类型返回当前位置的全部全局变量。

    >>>class A(object):

    ... bar = 1

    ...

    >>> a = A()

    >>> getattr(a, 'bar') # 获取属性 bar 值

    1

    >>> getattr(a, 'bar2') # 属性 bar2 不存在,触发异常

    Traceback (most recent call last):

    File "<stdin>", line 1, in <module>

    AttributeError: 'A' object has no attribute 'bar2'

    >>> getattr(a, 'bar2', 3) # 属性 bar2 不存在,但设置了默认值

    3

    >>>

    hasattr():hasattr(object, name),用于判断对象是否包含对应的属性。

    参数:

    object -- 对象。

    name -- 字符串,属性名。

    返回值:如果对象有该属性返回 True,否则返回 False。

    hash():用于获取取一个对象(字符串或者数值等)的哈希值。

    In [4]: hash("dafjajf")

    Out[4]: -8407846783282017319

    help():查看函数或模块用途的详细说明。

    hex():用于将10进制整数转换成16进制,以字符串形式表示。

    In [5]: hex(5689)

    Out[5]: '0x1639'

    id():函数用于获取对象的内存地址。

    In [7]: a=45

    In [8]: id(a)

    Out[8]: 1818259856

    input()

    int()

    isinstance():isinstance(object, classinfo),用来判断一个对象是否是一个已知的类型,类似 type()。

    isinstance() 与 type() 区别:

    type() 不会认为子类是一种父类类型,不考虑继承关系。

    isinstance() 会认为子类是一种父类类型,考虑继承关系。如果要判断两个类型是否相同推荐使用 isinstance()。

    参数:

    object -- 实例对象。

    classinfo -- 可以是直接或间接类名、基本类型或者由它们组成的元组。

    返回值:如果对象的类型与参数二的类型(classinfo)相同则返回 True,否则返回 False。。

    issubclass():方法用于判断参数 class 是否是类型参数 classinfo 的子类。

    iter():iter(object[, sentinel]),函数用来生成迭代器。

    参数:

    object -- 支持迭代的集合对象。

    sentinel -- 如果传递了第二个参数,则参数 object 必须是一个可调用的对象(如,函数),此时,iter 创建了一个迭代器对象,每次调用这个迭代器对象的__next__()方法时,都会调用 object。

    返回迭代器对象。

    len()

    list()

    locals():locals() 函数会以字典类型返回当前位置的全部局部变量。

    对于函数, 方法, lambda 函式, 类, 以及实现了 __call__ 方法的类实例, 它都返回 True。

    返回字典类型的局部变量。

    >>>def runoob(arg): # 两个局部变量:arg、z

    ... z = 1

    ... print (locals())

    ...

    >>> runoob(4)

    {'z': 1, 'arg': 4} # 返回一个名字/值对的字典

    >>>

    map():map(function, iterable,...),第一个参数function以参数序列中的每一个元素调用function函数,返回包含每次function函数返回值的新列表。

    参数:

    function -- 函数

    iterable -- 一个或多个序列

    python3返回迭代器。

    max()

    memoryview():函数返回给定参数的内存查看对象(Momory view)。

    所谓内存查看对象,是指对支持缓冲区协议的数据进行包装,在不需要复制对象基础上允许Python代码访问。

    min()

    next():next(iterator[, default])

    参数:

    iterator -- 可迭代对象

    default -- 可选,用于设置在没有下一个元素时返回该默认值,如果不设置,又没有下一个元素则会触发 StopIteration 异常。

    返回迭代器的下一个项目。

    object()

    oct():将一个整数转换成8进制字符串。

    open()

    ord():ord()函数是chr()函数(对于8位的ASCII字符串)或unichr()函数(对于Unicode对象)的配对函数,它以一个字符(长度为1的字符串)作为参数,返回对应的ASCII数值,或者Unicode数值,如果所给的Unicode字符超出了Python定义范围,则会引发一个 TypeError 的异常。

    pow():pow(x, y[, z]),方法返回xy(x的y次方) 的值。

    函数是计算x的y次方,如果z在存在,则再对结果进行取模,其结果等效于pow(x,y) %z

    注意:pow() 通过内置的方法直接调用,内置方法会把参数作为整型,而 math 模块则会把参数转换为 float。

    print()

    property(): 函数的作用是在新式类中返回属性值。(待补充)

    range()

    repr():将对象转化为供解释器读取的形式。

    reversed():返回一个反转的迭代器。参数可以是 tuple, string, list 或 range。

    round():round( x [, n] ),方法返回浮点数x的四舍五入值。

    参数:

    x -- 数字表达式。

    n -- 表示从小数点位数,其中 x 需要四舍五入,默认值为 0。

    set():函数创建一个无序不重复元素集,可进行关系测试,删除重复数据,还可以计算交集、差集、并集等。

    setattr():setattr(object, name, value),

    参数:

    object -- 对象。

    name -- 字符串,对象属性。

    value -- 属性值。

    slice():函数实现切片对象,主要用在切片操作函数里的参数传递。

    参数:

    参数说明:

    start -- 起始位置

    stop -- 结束位置

    step -- 间距

    sorted():sorted(iterable, key=None, reverse=False)

    参数:

    terable -- 可迭代对象。

    key -- 主要是用来进行比较的元素,只有一个参数,具体的函数的参数就是取自于可迭代对象中,指定可迭代对象中的一个元素来进行排序。

    reverse -- 排序规则,reverse = True 降序 , reverse = False 升序(默认)。

    返回重新排序的列表。

    staticmethod():返回函数的静态方法。

    str()

    sum():sum(iterable[, start])

    参数:

    iterable -- 可迭代对象,如:列表、元组、集合。

    start -- 指定相加的参数,如果没有设置这个值,默认为0。

    super():

    tuple():将列表转换为元组

    type():函数如果你只有第一个参数则返回对象的类型,三个参数返回新的类型对象。

    isinstance() 与 type() 区别:

    type() 不会认为子类是一种父类类型,不考虑继承关系。

    isinstance() 会认为子类是一种父类类型,考虑继承关系。

    如果要判断两个类型是否相同推荐使用 isinstance()。

    vars():返回对象object的属性和属性值的字典对象。返回对象object的属性和属性值的字典对象,如果没有参数,就打印当前调用位置的属性和属性值 类似 locals()。

    zip():zip() 函数用于将可迭代的对象作为参数,将对象中对应的元素打包成一个个元组,然后返回由这些元组组成的对象,这样做的好处是节约了不少的内存。

    我们可以使用 list() 转换来输出列表。

    如果各个迭代器的元素个数不一致,则返回列表长度与最短的对象相同,利用 * 号操作符,可以将元组解压为列表。

    __import__():__import__(name[, globals[, locals[, fromlist[, level]]]])

    函数用于动态加载类和函数 。

    如果一个模块经常变化就可以使用 __import__() 来动态载入

    秋来凉风起,无限思远人
  • 相关阅读:
    Springboot构建问题集
    常用算法解析技巧总结
    Linux、Docker安装Nginx
    MySQL查询语句报错 sql_mode=only_full_group_by 问题
    MySQL按周统计 WEEK 实例
    IDEA注册码分享
    Mock测试接口
    Maven常用命令
    js中的for循环,循环次数会多出一次。当循环到最后一个的时候,循环还会继续,并且此时i就变成remove?
    vue .sync的理解
  • 原文地址:https://www.cnblogs.com/lalavender/p/10463838.html
Copyright © 2011-2022 走看看