美文网首页
Python学习

Python学习

作者: 逛逛_堆栈 | 来源:发表于2021-04-01 13:53 被阅读0次

    第六天

    Python常用内置函数
    Python3解释器中内置了69个常用函数,属于底层的函数,它们到处可用。有些对大家来说比较熟悉,比如abs(), max(), sum()… 也有一些比较陌生,比如locals(), all(), map()… 今天来简单总结一下。
    1、数学函数
    abs(a) : 求取绝对值。
    max(list) : 求取list最大值。
    min(list) : 求取list最小值。
    sum(list) : 求取list元素的和。
    sorted(list) : 排序,返回排序后的list。
    len(list) : 获得list的长度。
    divmod(a,b): 获取商和余数。
    pow(a,b) : 获取乘方数。
    round(a,b) : 获取指定位数的小数。
    range(a[,b]) : 生成一个a到b的数组,左闭右开。

    print(abs(-1)) #-1
    print(max([1,3,5,7])) # 7
    print(min([1,3,5,7])) # 1
    print(sum([1,3,5,7])) # 16
    print(sorted([5,3,1,7])) #[1,3,5,7]
    print(len([1,3,5,7]))  # 4
    print(divmod(5,2))  # (2,1)
    print(pow(2,3))  # 8
    print(round(3.1415926,3))  # 3.142
    

    2、类型转换函数
    int(str) : 将字符串转换为int型。
    float(int/str) : 将int型或字符型转换为浮点型。
    str(int) : 将其他类型转换为字符型。
    bool(int) : 转换为布尔类型。
    bytes(str,code) : 接收一个字符串,与所要编码的格式,返回一个字节流类型。
    list(iterable) : 转换为list。
    iter(iterable): 返回一个可迭代的对象。
    dict(iterable) : 转换为dict字典。
    enumerate(iterable) : 返回一个枚举对象。
    tuple(iterable) : 转换为tuple元组。
    set(iterable) : 转换为set。
    hex(int) : 转换为16进制。
    oct(int) : 转换为8进制。
    bin(int) : 转换为2进制。
    chr(int) : 转换数字为相应ASCI码字符。
    ord(str) : 转换ASCI字符为相应的数字。

    print(int("12"))  # 12
    print(float("12"))  # 12.0
    print(str(12))  # '12'
    print(bool(0))  # False
    print(bool(1))  # True
    print(bytes('爬虫','utf-8'))  # b'\xe7\x88\xac\xe8\x99\xab'
    print(list((1,2,3)))  # [1,2,3]
    print(iter((1,2,3)))  # <tuple_iterator object at 0x0000018FCD7A5070>
    print(dict([('a',1),('b',2)]))  # {'a': 1, 'b': 2}
    print(tuple([1,2,3]))  #(1,2,3)
    print(set([1,2,3,2,4,1]))  # {1, 2, 3, 4}
    print(hex(512))  # 0x200
    print(oct(512))  # 0o1000
    print(bin(512))  # 0b1000000000
    print(chr(65))   # A
    print(ord('A'))  # 65
    

    3、功能函数
    eval(expression) : 执行一个表达式,或字符串作为运算,并返回结果。

    print(eval('1+1'))  # 2
    

    exec(object) : 动态执行 Python 代码。
    filter(func, iterable) : 用于过滤序列,过滤掉不符合条件的元素,返回由符合条件元素组成的新列表或者迭代器。

    #获得列表中的奇数
    def filterTest(x):
        return x%2 == 1
    newList = filter(filterTest,[1,2,3,4,5,6,7,8,9])
    print(list(newList))  # [1, 3, 5, 7, 9]
    

    map(func, *iterable) : map函数的作用是以参数序列中的每个元素分别调用function函数,把每次调用后返回的结果保存为对象。

    def mapTest(x):
       return x*2+1
    result = map(mapTest,[2,3,4])
    print(list(result))  # [5, 7, 9]
    

    zip(*iterable) : 将可迭代的对象作为参数,将对象中对应的元素打包成一个个元组,然后返回由这些元组组成的列表。如果各个迭代器的元素个数不一致,则返回列表长度与最短的对象相同,利用 * 号操作符,可以将元组解压为列表。

    #a,b长度一致
    a = [1,2,3]
    b = [4,5,6]
    zipper = list(zip(a,b))
    print(zipper)  # [(1, 4), (2, 5), (3, 6)]
    #若length不一致
    a1 = [1,2]
    b1 = [4,5,6,7]
    zipper1 = list(zip(a1,b1))
    print(zipper1)  # [(1, 4), (2, 5)]
    # 这里加list是为了输出内容,否则是object Python3为节约内存进行了优化。
    

    type(object):返回一个对象的类型。

    print(type([2]))  # <class 'list'>
    print(type('123'))  # <class 'str'>
    

    id(object):返回对象的唯一标识符,标识符是一个整数。

    a = "查看ID标识符"
    print(id(a))  #  1860633190448
    

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

    print(hash("查看hash值"))   # -650747374711114082
    注意:每次执行 hash值均会不同 是因为Python Hash启动时随机生成的机制。
    

    help():调用系统内置的帮助系统。
    isinstance(object):判断一个对象是否是一个已知的类型,类似 type()。区别:type() 不会认为子类是一种父类类型,不考虑继承关系;
    isinstance() 会认为子类是一种父类类型,考虑继承关系。
    如果要判断两个类型是否相同推荐使用 isinstance()。

    a = 12
    print(isinstance(a,int))  # True
    print(isinstance(a,str))  # False
    

    issubclass(classB,classA):判断一个类是否为另一个类的子类。

    class A:
        pass
    class B(A):
        pass
    print(issubclass(B,A))  #True
    

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

    a = 'global查看全局变量'
    print(globals()) #{'__name__': '__main__', '__doc__': None, '__package__': None, '__loader__': <_frozen_importlib_external.SourceFileLoader object at 0x0000027460770880>, '__spec__': None, '__annotations__': {}, '__builtins__': <module 'builtins' (built-in)>, '__file__': 'C:/Python/python1/venv/Include/1.py', '__cached__': None, 'a': 'global查看全局变量'}
    

    next(iterator[, default]) : 接收一个迭代器,返回迭代器中的数值,如果设置了default,则当迭代器中的元素遍历后,输出default内容。

    list = [9,7,5,3]
    iter = iter(list)
    print(next(iter,1))  # 9
    print(next(iter,1))  # 7
    print(next(iter,1))  # 5
    print(next(iter,1))  # 3
    print(next(iter,1))  #默认值1
    

    reversed(sequence) : 生成一个反转序列的迭代器。

    aList = [123, 'xyz', 'zara', 'abc', 'xyz']
    aList.reverse()
    print("List : ", aList)  # List :  ['xyz', 'abc', 'zara', 'xyz', 123]
    

    reduce():函数会对参数序列中元素进行累计。

    from functools import reduce
    def reduceTest(x,y):
        return x*y
    result = reduce(reduceTest,[1,2,3,4,5])
    print(result)  # 120
    

    4、总结
    还有一些函数这里就不在叙述,我们学习使用过程中可以参考https://www.runoob.com/python/python-built-in-functions.html
    。重要的是要会使用。重要的是要会使用。重要的是要会使用。重要的事情说三遍。

    相关文章

      网友评论

          本文标题:Python学习

          本文链接:https://www.haomeiwen.com/subject/lqzzhltx.html