• 内置函数


    python内置函数

    img

    1. abs() 获取绝对值
    >>> abs(-10)
    10
    >>> a = -10
    >>> a.__abs__()
    10
    
    1. all() 参数为可迭代对象,迭代对象为空时,返回True.如果迭代对象的所有元素都为真,那么返回True,否则返回False.
    all(['python',123])
    --->True
     
    all([])
    --->True
     
    all([0])
    --->False
     
    all(" ")
    --->True
     
    all(1,' ',2,None)
    --->False
    

    3.any() 参数为可迭代对象,参数为空时返回True

    print(any([None,0,' ',{},1]))
    --->True
     
    print(any(' '))
    --->True
    

    4.sum() 求和

    >>> res = sum(i for i in range(5))
    >>> print(res)
    10
    

    5.bin() 将参数转化为二进制

    >>> bin(3)
    '0b11'
    >>> bin(10)
    '0b1010'
    

    6.bool() 布尔函数,返回bool值,False或True

    >>> bool(3)
    True
    >>> bool(0)
    False
    >>> bool(None)
    False
    
    1. ascii()  调用对象的_repr_()方法,获得该方法的返回值

    8.bytes() 将一个字符串转化为字节类型

    >>> print(bytes('hello',encoding='utf-8'))
    b'hello
    

    9.str()  将字符类型/数值类型等转换为字符串类型

    >> str(1)
    '1'
    

    10.chr() 查看十进制数对应的ASCII字符

    >>> chr(65)
    'A'
    >>> chr(90)
    'Z'
    >>> chr(97)
    'a'
    >>> chr(122)
    'z'
    

    11.ord() 查看某个ASCII对应的十进制数

    >>> ord('a')
    97
    >>> ord('A')
    65
    

    12.callabe() 判断对象是否可以被调用,能被调用的对象就是一个callables对象,比如函数和带有_call_()的实例

    13. classmethod()  用来指定一个方法为类的方法,由类直接调用执行,只有一个cls参数,执行雷的方法时,自动将调用该方法的类赋值给cls.没有此参数指定的类的方法为实例方法

    class Province:
        country = "中国"
           
        def __init__(self, name):
            self.name = name
           
        @classmethod
        def show(cls):  # 类方法,由类调用,最少要有一个参数cls,调用的时候这个参数不用传值,自动将类名赋值给cls
            print(cls)
           
    # 调用方法
    Province.show()
    

    14.complie()  将字符串编译成python能识别或可以执行的代码,也可以将文字读成字符串再编译

    `compile``(source, filename, mode, flags``=``0``, dont_inherit``=``False``, optimize``=``-``1``)``说明:``  ``1.` `将source编译为代码或者AST对象。代码对象能够通过``exec``语句来执行或者``eval``()进行求值。``  ``2.` `参数source:字符串或者AST(Abstract Syntax Trees)对象。即需要动态执行的代码段。``  ``3.` `参数 filename:代码文件名称,如果不是从文件读取代码则传递一些可辨认的值。当传入了source参数时,filename参数传入空字符即可。``  ``4.` `参数mode:指定编译代码的种类,可以指定为 ‘``exec``’,’``eval``’,’single’。当source中包含流程语句时,mode应指定为‘``exec``’;当source中只包含一个简单的求值表达式,mode应指定为‘``eval``’;当source中包含了交互式命令语句,mode应指定为``'single'``。`
    
    #流程语句使用exec
    code1 = 'for i in range(10):print(i)'
    aa = compile(code1,'','exec')  #source,filename,mode
    exec(aa)
    
    结果:
    0
    1
    2
    3
    4
    5
    6
    7
    8
    9
    
    #简单求值表达式用eval
    code2 = "1+2+3+4"
    bb = compile(code2,'','eval')
    print(eval(bb))
    
    结果:
    10
    
    
    #交互语句用single
    code3 = "name = input('please input your name:')"
    cc = compile(code3,'','single')
    exec(cc)   #执行时提示输入name
    

    15.complex()

    1 创建一个值为real + imag * j的复数或者转化一个字符串或数为复数。如果第一个参数是字符串,则不需要指定第二个参数。
    2 参数real:int,long,float或字符串。
    3 参数imag:int,long,float
    
    x=complex(1-2j)
    print(x.real)
    --->1.0
     
    print(x.imag)
    --->2.0
    
    1. delattr()  删除对象的属性

    2. float()  讲一个字符串或整数转换为浮点数

    >>> print(float(1))
    1.0
    

    19.list() 参数为可迭代对象

    20.tuple() 元组

    21.dict() 创建数据字典

    22.set() 集合

    23.frozenset() 不可变集合

    24.dir()  不带参数时返回当前范围内的变量,方法和定义的类型列表,带参数时返回参数的属性,方法列表

    >>> dir()
    ['__annotations__', '__builtins__', '__doc__', '__loader__', '__name__', '__package__', '__spec__']
    >>> dir(sum)#输出sum下有哪些可被sum调用的方法。(对象.方法),sum.方法
    

    25.divmod()  分别取商和余数.二个参数x和y,输出元组(x//y,x%y)

    print(divmod(100,33))
    --->(3,1)
    
    1. enumerate()  返回一个可以枚举的对象,该对象的next()方法将返回一个元组
    for i in enumerate(['a','b','c','d']):
        print(i)
    结果:
    (0, 'a')
    (1, 'b')
    (2, 'c')
    (3, 'd')
    

    27.eval()  将字符串str中的表达式提取出来并运行

    s= "1 + 2 * 3"
    print(type(s))
    print(eval(s))
    
    结果:
    <class 'str'>
    7
    

    28.exec()  执行字符串或complie方法编译过的字符串,没有返回值

    exec函数和eval函数类似,也是执行动态语句,只不过eval函数只用于执行表达式求值,而exec函数主要用于执行语句块。
    
    >>> eval('a=1+2') #执行语句报错
    Traceback (most recent call last):
      File "<pyshell#0>", line 1, in <module>
        eval('a=1+2')
      File "<string>", line 1
        a=1+2
         ^
    SyntaxError: invalid syntax
    
    >>> exec('a=1+2') #执行语句
    >>> a
    3
    

    29.filter()  过滤器,构造一个序列,等价于[ item for item in iterables if function(item)],在函数中设定过滤条件,逐一循环迭代器中的元素,将返回值为True时的元素留下,形成一个filter类型数据

    30.format()  格式化输出字符串,format(value, format_spec)实质上是调用了value的__format__(format_spec)方法

    >>> print("I am {0}, I like {1}".format("derek","python"))
    I am derek, I like python
    

    31.getattr()  获取对象的属性

    getattr(object, name [, defalut])
    获取对象object名为name的特性,如果object不包含名为name的特性,将会抛出AttributeError异常;如果不包含名为name的特性
    且提供default参数,将返回default。
    参数object:对象
    参数name:对象的特性名
    参数default:缺省返回值
     
    print(getattr(list, 'append'))
    ---> <method 'append' of 'list' objects>
     
    mylist = [3, 4, 5]
    append(mylist, 6)
    print(mylist)
    --->[3, 4, 5, 6]
     
    print(getattr(list, 'add'))
    --->Traceback (most recent call last):
      File "<stdin>", line 1, in <module>
    AttributeError: type object 'list' has no attribute 'add'
     
    print(getattr(list, 'add', 'NoMethod'))
    ---> 'NoMethod'
    

    32.globals()  返回一个描述当前全局变量的字典

    33.hasattr()

    hasattr(object,name)
    判断对象object是否包含名为name的特性(hasattr是通过调用getattr(object,name))是否抛出异常来实现的。
    参数object:对象
    参数name:特性名称
     
    print(hasattr(list, 'append'))
    ---> True
     
    print(hasattr(list, 'add'))
    ---> False
    

    34.hash()  哈希值

    hash(object)
    hash是一种算法,二个数值相等hash值是确定的唯一的,常用来校验数据。<br>hash值不能逆推。
    如果对象object为哈希表类型,返回对象object的哈希值。哈希值为整数,在字典查找中,哈希值用于快递比价字典的键。
    两个数值如果相等,则哈希值也相等。
    

    35.hex() 十进制转化为十六进制

    >>> print(hex(10))
    0xa
    
    1. id() 查看唯一标识的身份

    2. help()  返回对象的帮助文档

    3. input()  获取用户输入内容

    4. isinstance()  检查对象是否是类的对象,返回True或False

    isinstance(obj, cls)
    检查obj是否是类cls的对象, 返回True 或 False
    class Foo(object):
         pass
    obj = Foo()
    isinstance(obj, Foo)
    
    1. issubclass()  检查一个类是否是另一个类的子类。返回True或False
    issubclass(sub, super)
    检查sub类是否是super类的派生类(子类)。返回True 或 False
      
    class Foo(object):
        pass
        
    class Bar(Foo):
        pass
        
    issubclass(Bar, Foo)
    
    1. iter()

    2. len()  返回对象长度,参数可以是序列类型(字符串,元组或列表)或映射类型(如字典)

    3. locals()  打印当前可用的局部变量的字典

    4. lambda匿名函数

    5. zip() ‘拉链’,一对一的

    6. sorted() 返回列表,列表包含所有的元素,按升序排列

    7. map() 映射,第一个参数为函数,第二个参数为可迭代对象

    48.max()  返回给定元素里最大值

    49.min()  返回给定元素里最小值

    50.object()

     1.获取一个新的,无特性(geatureless)对象。Object是所有类的基类。它提供的方法将在所有的类型实例中共享。
    2 该函数时2.2.版本新增,2.3版本之后,该函数不接受任何参数。
    

    51.open()  打开文件

    52.print()  输出函数

    53.range()  根据需要生成一个指定范围的数字,可以提供你需要的控制来迭代指定的次数

    1. repr()  将任意值转换为字符串,供计时器读取的形式
    返回一个对象的字符串表示。有时可以使用这个函数来访问操作。
    对于许多类型来说,repr()尝试返回一个字符串,eval()方法可以使用该字符串产生对象;
    否则用尖括号括起来的,包含类名称和其他二外信息的字符串被返回。
    

    57.round()  四舍六入五留双,五留双留离整数最近的偶数

    print(round(10.3))
    ----> 10
     
    print(round(10.5))
    ----> 10
     
    print(round(10.6))
    ----> 11
     
    print(round(10.9))
    ----> 11
     
    print(round(11.5))
    ----> 12
    

    58.pow()  幂函数

    >>> print(pow(3,3))
    27
    >>> print(pow(2,5))
    32
    
    1. reduce() 合并,第一个参数为函数,第二个参数为可迭代对象。第三个参数可有可无,默认初始值。

    2. filter 过滤

    61.oct() 十进制转化为八进制

    print(oct(10))
    ---->0o12
    

    62.slice 切片

    l=[1,2,3,4,5]
    print(l[2:4])
    --->[3,4]
     
    s=slice(2,4)
    print(l[s])
    ---->[3,4]
    
    1. vars 没有参数时和locals()一样,有参数得到字典

    2. _import_

  • 相关阅读:
    用Sqoop实现数据HDFS到mysql到Hive
    hdfs的文件结构
    搭建Hadoop-1.2.1&hbase-0.94.17&hive-0.9.0&centos6.8_x64集群
    缩减表空间碎片
    MySQL8.0.12源码编译安装_centos7.3
    Mysql8.0.18的源码安装
    mysql5.7.31二进制安装_centos7
    个人windows开发环境风格
    linux shell中那些奇奇怪怪的语法
    关于上线的一些事儿
  • 原文地址:https://www.cnblogs.com/Henry121/p/12599315.html
Copyright © 2020-2023  润新知