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

    python内置函数

    #!/usr/bin/env python
    # -*- coding: utf-8 -*-
    # @Time    : 2018/3/21 0:04
    # @Author  : hyang
    # @Site    : 
    # @File    : 内置函数.py
    # @Software: PyCharm
    
    # #1.abs()    绝对值或复数的模
    # abs(-1)        >>> 1
    #
    # #2.all()    接受一个迭代器,如果迭代器的所有元素都为真,那么返回True,否则返回False
    # all([1,2,3])    >>> True
    # all([1,2,0])  >>> False
    #
    # #3.any()    接受一个迭代器,如果迭代器里有一个元素为真,那么返回True,否则返回False
    # any([0,0])    >>> False
    # any([1,2,0])  >>> True
    
    # #4.ascii()    调用对象的__repr__()方法,获得该方法的返回值,对于字符串中的非 ASCII 字符
    #               则返回通过 repr() 函数使用 x, u 或 U 编码的字符
    # ascii('ab')   >>> "'ab'"
    # ascii('a中')  >>> "'a\u4e2d'"
    # #5.bin()    将十进制转换为二进制
    # bin(10)        >>> '0b1010'
    #
    # #6.bool()    测试一个对象是True还是False
    # bool([])    >>> False
    #
    # #7.bytearray()   字节数组 字节是计算机的语言,字符串是人类语言,它们之间通过编码表形成一一对应的关系
    # a = 'python'
    # >>> bytearray(a,'utf8')
    # bytearray(b'python')
    # >>> list(bytearray(a,'utf8'))
    # [112, 121, 116, 104, 111, 110]
    # >>> b'python'[0]
    # 112
    #
    # #8.bytes()    将一个字符串转换成字节类型
    # st = 'python'
    # a = bytes(st,encoding='utf-8')
    # >>> a
    # b'python'
    #
    # #9.callable()    判断对象是否可以被调用,能被调用的对象就是一个callables对象,比如函数
    # callable(str)        >>> True
    #
    # #10.chr()    查看十进制数对应的ASCII字符
    # chr(10)        >>> '
    '
    #
    # #11.classmethod()    用来指定一个方法为类的方法,由类直接调用执行,只有一个cls参数,执行类的方法时,自动将调用该方法的类赋值给cls.没有此参数指定的类的方法为实例方法
    #
    # #12.compile()    将字符串编译成python能识别或可以执行的代码,也可以将文字读成字符串再编译
    # compile(source, filename, mode, flags=0, dont_inherit=False, optimize=-1)
    # '''
    # 将source编译为代码或者AST对象。代码对象能过通过exec语句来执行或者eval()进行求值。
    # 参数source:字符串或者AST(abstract syntax trees)对象。
    # 参数filename:代码文件名称,如果不是从文件读取代码则传递一些可辨认的值。
    # 参数model:指定编译代码的种类。可以指定'exec', 'eval', 'single'。
    # 参数flag和dont_inherit:这两个参数为可选参数
    # '''
    # st = 'python'
    # r = compile(st,'<string>','exec')
    # >>> r    <code object <module> at 0x000001841735E810, file "<string>", line 1>
    #
    # #13.complex()    创建一个值为real + imag * j的复数或者转化一个字符串或数为复数。如果第一个参数是字符串,则不需要指定第二个参数
    # complex(1,2)    >>> (1+2j)
    # complex('12')    >>> (12+0j)
    #
    # #14.copyright()    版权
    #
    # #15.credits()  支持
    #
    # #16.delattr()    删除对象的属性
    #
    # #17.dict()    创建数据字典
    # dict(a=1)    >>> {'a': 1}
    #
    # #18.dir()    不带参数时返回当前范围内的变量,方法和定义的类型列表,带参数时返回参数的属性,方法列表
    #
    # >>> a=[1,2,3]
    # >>> dir(a)
    # ['__add__', '__class__', '__contains__', '__delattr__', '__delitem__', '__dir__', '__doc__',
    #  '__eq__', '__format__', '__ge__', '__getattribute__', '__getitem__', '__gt__', '__hash__', '__']
    
    # #19.divmod()    分别取商和余数
    # divmod(5,2)        >>> (2, 1)
    #
    # #20.enumerate()    返回一个可以枚举的对象,该对象的next()方法将返回一个元组
    # li = ['a','b','c']
    # >>> enumerate(li)
    # <enumerate object at 0x0000018417402558>
    # >>> list(enumerate(li))
    # [(0, 'a'), (1, 'b'), (2, 'c')]
    #
    # #21.eval()    1.将字符串str当成有效的表达式来求值并返回计算结果2.取出字符串中内容,有返回值
    # >>> eval("{'a':1}")
    # {'a': 1}
    # >>> eval('1 + 2 + 3')
    # 6
    #
    # #22.exec()    执行字符串或complie方法编译过的字符串,没有返回值,可执行多行
    # >>> st = '''
    # z = 4
    # a = x + y + z
    # print(a)
    # '''
    # >>> exec(st,{'x':0,'y':0},{'y':10,'z':10})
    # 14
    # >>> st = '''
    # a = x + y + z
    # print(a)
    # '''
    # >>> exec(st,{'x':0,'y':0},{'y':10,'z':10})
    # 20
    #
    # #23.exit()  退出
    #
    # #24.filter()    过滤器,构造一个序列,等价于[ item for item in iterables if function(item)],在函数中设定过滤条件,逐一循环迭代器中的元素,将返回值为True时的元素留下,形成一个filter类型数据
    # '''
    # filter(function or None, iterable) --> filter object
    # 参数function:返回值为True或False的函数,可以为None
    # 参数iterable:序列或可迭代对象
    # '''
    # >>> filter(lambda x:x+1,[1,2])
    # <filter object at 0x00000184173EAD30>
    # >>> list(filter(lambda x:x+1,[1,2]))
    # [1, 2]
    #
    # >>> filter(lambda x:x>10,[9,12])
    # <filter object at 0x00000184173EAC88>
    # >>> list(filter(lambda x:x>10,[9,12]))
    # [12]
    #
    # #25.float()    讲一个字符串或整数转换为浮点数
    # >>> float(11)
    # 11.0
    #
    # #26.format()    格式化输出字符串,format(value, format_spec)实质上是调用了value的__format__(format_spec)方法
    # >>> format(12)
    # '12'
    # >>> format(12,'5d')
    # '   12'
    #
    # #27.frozenset()    创建一个不可修改的集合类似于tuple
    # '''
    # frozenset([iterable])
    # set和frozenset最本质的区别是前者是可变的,后者是不可变的。当集合对象会被改变时(例如删除,添加元素),只能使用set,
    # 一般来说使用fronzet的地方都可以使用set
    # '''
    # >>> frozenset([1,2,3])
    # frozenset({1, 2, 3})
    #
    # #28.getattr()    获取对象的属性
    # '''
    # getattr(object, name[, default]) -> value
    # 获取对象object名为name的特性,如果object不包含名为name的特性,将会抛出AttributeError异常;如果不包含名为name的特性
    # 且提供default参数,将返回default。
    # 参数object:对象
    # 参数name:对象的特性名
    # 参数default:缺省返回值
    # '''
    #
    # #29.globals()    返回一个描述当前全局变量的字典
    # >>> st = 'python'
    # >>> globals()
    # {'__name__': '__main__', '__doc__': None, '__package__': None, '__loader__': <class '_frozen_importlib.BuiltinImporter'>, '__spec__': None, '__annotations__': {}, '__builtins__': <module 'builtins' (built-in)>, 'a': b'python', 'li': ['a', 'b', 'c'], 'i': 'zip', 'st': 'python', 'r': <code object <module> at 0x000001841735E810, file "<string>", line 1>}
    #
    # #30.hasattr()    hasattr(object,name)判断对象object是否包含名为name的特性(hasattr是通过调用getattr(object,name))是否抛出异常来实现的
    # >>> hasattr(list,'pop')
    # True
    #
    # #31.hash()    哈希值hash(object)注意:可哈希的即不可变数据类型,不可哈希即可变数据类型
    # '''
    # 如果对象object为哈希表类型,返回对象object的哈希值。哈希值为整数,在字典查找中,哈希值用于快递比价字典的键。
    # 两个数值如果相等,则哈希值也相等
    # '''
    # >>> hash('ab')
    # 2766084925433962145
    # >>> hash(12)
    # 12
    #
    # #32.help() 返回对象的帮助文档
    # '''
    # 调用内建的帮助系统,如果不包含参数,交互式帮助系统将在控制台启动。如果参数为字串,则可以是模块,类,方法等名称,并且帮助页面将会在控制台打印。参数也可以         为任意对象
    # '''
    #help(filter)
    # >>> help(filter)
    # Help on class filter in module builtins:
    # 
    # class filter(object)
    #  |  filter(function or None, iterable) --> filter object
    #  |  
    #  |  Return an iterator yielding those items of iterable for which function(item)
    #  |  is true. If function is None, return the items that are true.
    #  |  
    #  |  Methods defined here:
    #  |  
    #  |  __getattribute__(self, name, /)
    #  |      Return getattr(self, name).
    #  |  
    
    
    # #33.hex() 将十进制转换为十六进制
    # hex(16)        >>> '0x10'
    #
    # #34.id()    返回对象的内存地址
    # >>> id(1)
    # 1726850144
    #
    # #35.input()    获取用户输入内容
    # >>> input('请输入:')
    # 请输入:abc
    # 'abc'
    #
    # #36.int()    将一个字符串或数值转换为一个普通整数
    # '''
    # int(x=0) -> integer
    # int(x, base=10) -> integer
    # 如果参数是字符串,那么它可能包含符号和小数点。参数base表示转换的基数(默认是10进制)。
    # 它可以是[2,36]范围内的值,或者0。如果是0,系统将根据字符串内容来解析。
    # 如果提供了参数base,但参数x并不是一个字符串,将抛出TypeError异常;
    # 否则,参数x必须是数值(普通整数,长整数,浮点数)。通过舍去小数点来转换浮点数。
    # 如果超出了普通整数的表示范围,一个长整数被返回。
    # 如果没有提供参数,函数返回0
    # '''
    # >>> int('12')
    # 12
    #
    # #37.isinstance()    检查对象是否是类的对象,返回True或False
    # >>> isinstance('a',str)
    # True
    #
    # #38.issubclass()    检查一个类是否是另一个类的子类。返回True或False issubclass(sub, super)
    # >>> issubclass(str,object)
    # True
    #
    # #39.iter()     返回一个iterator对象
    # '''
    # iter(iterable) -> iterator
    # iter(callable, sentinel) -> iterator
    # '''
    # >>> a = iter([1,2,3])
    # >>> next(a)
    # 1
    # >>> a = iter([1,2,3,4,5])
    # >>> b = iter(a.__next__,3)
    # >>> next(b)
    # 1
    # >>> next(b)
    # 2
    # >>> next(b)
    # Traceback (most recent call last):
    #   File "<pyshell#24>", line 1, in <module>
    #     next(b)
    # StopIteration
    #
    # #40.len()    返回对象长度,参数可以是序列类型(字符串,元组或列表)或映射类型(如字典)
    # >>> len([1,2,3])
    # 3
    #
    # #41.license()    软件的历史
    #
    # #42.list()    列表构造函数
    # >>> list('abc')
    # ['a', 'b', 'c']
    #
    # #43.locals()    打印当前可用的局部变量的字典
    # >>> locals()
    # {'__name__': '__main__', '__doc__': None, '__package__': None, '__loader__': <class '_frozen_importlib.BuiltinImporter'>, '__spec__': None, '__annotations__': {}, '__builtins__': <module 'builtins' (built-in)>, 'a': <list_iterator object at 0x00000185CCC2C4E0>, 'b': <callable_iterator object at 0x00000185CCCC8860>}
    #
    # #44.map()    对于参数iterable中的每个元素都应用fuction函数,并将结果作为列表返回
    # '''
    # 如果有多个iterable参数,那么fuction函数必须接收多个参数,这些iterable中相同索引处的元素将并行的作为function函数的参数。
    # 如果一个iterable中元素的个数比其他少,那么将用None来扩展改iterable使元素个数一致。
    # 如果有多个iterable且function为None,map()将返回由元组组成的列表,每个元组包含所有iterable中对应索引处值。
    # '''
    # >>> li = [1,2,3]
    # >>> a = map(str,li)
    # >>> a
    # <map object at 0x00000185CCCC8F60>
    # >>> list(a)
    # ['1', '2', '3']
    #
    # #45.max()    返回给定元素里最大值
    # >>> max(1,2,3,4)
    # 4
    #
    # #46.memoryview()    本函数是返回对象obj的内存查看对象。所谓内存查看对象,就是对象符合缓冲区协议的对象,
    # 为了给别的代码使用缓冲区里的数据,而不必拷贝,就可以直接使用
    # >>> memoryview(b'aabc')
    # <memory at 0x00000185CCC95408>
    # >>> list(memoryview(b'abc'))
    # [97, 98, 99]
    #
    # #47.min()    返回给定元素里最小值  具体用法跟max()相同
    # >>> min([1,2,3,4])
    # 1
    #
    # #48.next()    返回一个可迭代数据结构(如列表)中的下一项
    # >>> a = iter([1,2,3,4])
    # >>> next(a)
    # 1
    #
    # #49.object()    获取一个新的,无特性(geatureless)对象。Object是所有类的基类。它提供的方法将在所有的类型实例中共享
    #
    # #50.oct() 将十进制转换为八进制
    # oct(8)        >>> '0o10'
    #
    # #51.open()    打开文件    open(file, mode='r', buffering=-1, encoding=None, errors=None, newline=None, closefd=True, opener=None)
    #
    # #52.ord()    查看某个ascii对应的十进制数
    # ord('a')    >>> 97
    #
    # #53.pow()    幂函数pow(x, y, z=None, /)    幂函数,表示取x得y次幂,如果存在第三个参数z,则表示乘方结果对第三个参数取余
    # >>> pow(2,8)
    # 256
    # >>> pow(2,8,3)
    # 1
    #
    # #54.print()    输出函数
    #
    # #55.property()  类方法可以当作属性调用
    #
    # #56.quit()    退出
    #
    # #57.range() 根据需要生成一个指定范围的数字,可以提供你需要的控制来迭代指定的次数
    # >>> list(range(10))
    # [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
    #
    # #58.repr()    将任意值转换为字符串,供计时器读取的形式  
    #
    # #59.reversed()    反转,逆序对象
    # >>> list(reversed([6,7,9,2,4,1]))
    # [1, 4, 2, 9, 7, 6]
    
    #
    # #60.round()    四舍五入
    # >>> round(1.556,2)
    # 1.56
    #
    # #61.set()    将对象转换成集合
    #
    # #62.setattr()    与getattr()相对应
    #
    # #63.slice()    切片功能
    # >>> li = [1,2,3,4,5,6]
    # >>> slice(1,3,li)
    # slice(1, 3, [1, 2, 3, 4, 5, 6])
    #
    # #64.sorted()    排序
    # >>> li
    # [1, 2, 3, 4, 5, 6]
    # >>> sorted(li,key = int,reverse = True)
    # [6, 5, 4, 3, 2, 1]
    #
    # #65.staticmethod()    方便将外部函数集成到类体中,美化代码结构,重点在不需要类实例化的情况下调用方法
    #
    # #66.str() 将字符类型/数值类型等转换为字符串类型
    # >>> str(12)
    # '12'
    #
    # #67.sum()    求和
    # >>> sum([1,2])
    # 3
    #
    # #68.super()    调用父类的方法
    #
    # #69.tuple()    元组构造函数
    # >>> tuple([1,2,3])
    # (1, 2, 3)
    #
    # #70.type()    显示对象所属的类型
    # >>> type(1)
    # <class 'int'>
    #
    # #71.vars()    本函数是实现返回对象object的属性和属性值的字典对象。如果默认不输入参数,就打印当前调用位置的属性和属性值,相当于locals()的功能。如果有参数输入,就只打印这个参数相应的属性和属性值
    # >>> class ob:
    #     i = 1
    # >>> vars(ob)
    # mappingproxy({'__module__': '__main__', 'i': 1, '__dict__': <attribute '__dict__' of 'ob' objects>, '__weakref__': <attribute '__weakref__' of 'ob' objects>, '__doc__': None})
    # >>> a = ob()
    # >>> vars(a)
    # {}
    #
    # #72.zip()    将对象逐一配对,如果配不上,则丢弃
    # >>> li = [1,2,3,4]
    # >>> tu = ('a','b','c')
    # >>> zip(tu,li)
    # <zip object at 0x00000185CCD04548>
    # >>> list(zip(tu,li))
    # [('a', 1), ('b', 2), ('c', 3)]
    # >>> dict(zip(tu,li))
    # {'a': 1, 'b': 2, 'c': 3}
  • 相关阅读:
    将自己写的经常复用的类封装成dll/lib的方法
    Mat 和 CvMat,IplImage相互转化
    制作VB安装程序问答(Package & Deployment)
    NTDDI_VERSION,_WIN32_WINNT,WINVER,_WIN32_IE定义宏的含义
    解决"cvCreateVideoWriter保存视频帧压缩格式只能用1"的问题
    100条道理,看完后请留下你的感言
    世界上最著名的24幅奇图
    字节对齐
    齐次坐标的理解
    在OpenCV中自适应确定canny算法的分割门限
  • 原文地址:https://www.cnblogs.com/xiao-apple36/p/8614438.html
Copyright © 2011-2022 走看看