python内置函数

参考

http://www.runoob.com/python3/python3-built-in-functions.html

https://docs.python.org/3.5/library/functions.html

 

"""常用函数"""
# len()方法返回对象(字符串、列表、元组等)长度或项目个数
print(len([1, 2, 3]))  # 3
# divmod()函数把除数和余数运算结果结合起来,返回一个包含商和余数的元组(a // b, a % b)
print(divmod(10, 3))  # (3, 1)
# print(divmod(1 + 2j, 1 + 0.5j))# 一些版本不支持复数
# pow()方法返回x的y次方的值
print(pow(2, 3))  # 8
# round()方法返回浮点数x的四舍五入值
print(round(3.5))  # 4
print(round(3.56, 1))  # 3.6
# abs()函数返回数字的绝对值
print(abs(-1))  # 1
print(abs(-1.2))  # 1.2
# max()方法返回给定参数的最大值,参数可以为序列
print(max(1, 2, 3))  # 3
print(max([1, 2, 3]))  # 3
# min()方法返回给定参数的最小值,参数可以为序列
print(min(1, 2, 3))  # 1
print(min([1, 2, 3]))  # 1
# isinstance()函数来判断一个对象是否是一个已知的类型
print(isinstance('a', str))  # True
iterator = iter([])
print(type(iterator))  # <class 'list_iterator'>
print(isinstance(iter([]), Iterable))  # True
print(isinstance(iter([]), Iterator))  # True
# callable()函数用于检查一个对象是否是可调用的。如果返回True,object仍然可能调用失败;但如果返回False,调用对象ojbect绝对不会成功
# 对于函数,方法,lambda函式,类,以及实现了__call__方法的类实例,它都返回True
print(callable("aa"))  # False
print(callable(isinstance))  # True
# Python3 range()函数返回的是一个可迭代对象(类型是对象)
print(range(10))  # range(0, 10)
print(list(range(10)))  # [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
# getattr()函数用于返回一个对象属性值
print(getattr('aa', 'split'))  # <built-in method split of str object at 0x0000000002808848>
# hasattr()函数用于判断对象是否包含对应的属性
print(hasattr('aa', 'split'))  # True
# zip()函数用于将可迭代的对象作为参数,将对象中对应的元素打包成一个个元组,然后返回由这些元组组成的对象,
# 这样做的好处是节约了不少的内存。我们可以使用list()转换来输出列表。
# 如果各个迭代器的元素个数不一致,则返回列表长度与最短的对象相同,利用*号操作符,可以将元组解压为列表。
a = [1, 2, 3]
b = [4, 5, 6]
print(list(zip(a, b)))  # [(1, 4), (2, 5), (3, 6)]
print(*zip(a, b))  # (1, 4) (2, 5) (3, 6)
print(*zip(*list(zip(a, b))))  # (1, 2, 3) (4, 5, 6)

 

"""类型转换函数"""
# type()函数如果你只有第一个参数则返回对象的类型,三个参数返回新的类型对象
print(type('a'))  # <class 'str'>
Foo = type('Foo', (str,), {'name': 'jack'})
print(Foo)  # <class '__main__.Foo'>
f = Foo('aa')
print(f)  # aa
print(f.name)  # jack
# int()函数用于将一个字符串或数字转换为整型
print(int('10'))  # 10
print(int(10.8))  # 10
# float()函数用于将整数和字符串转换成浮点数
print(float(10))  # 10.0
print(float('10.8'))  # 10.8
# complex()函数用于创建一个值为real + imag * j的复数或者转化一个字符串或数为复数。
# 如果第一个参数为字符串,则不需要指定第二个参数
print(complex('1+2j'))  # (1+2j)
print(complex(3, 4))  # (3+4j)
# str()函数将对象转化为适于人阅读的形式,print打印的时候,python会先调用str方法
print(str(1.5))  # 1.5
print(str([1, 2, 3]))  # [1, 2, 3]
# list()方法用于将可迭代对象(如tuple,set,dict)转换为列表
print(list((1, 2, 3)))  # [1, 2, 3]
print(list(set('123')))  # ('3', '1', '2')
# tuple函数将可迭代对象(如tuple,set,dict)转换为元组
print(tuple([1, 2, 3]))  # [1, 2, 3]
print(tuple(set('123')))  # ('3', '1', '2')
# hex()函数用于将10进制整数转换成16进制,以字符串形式表示
print(hex(78))  # 0x4e
# oct()函数将一个整数转换成8进制字符串
print(oct(78))  # 0o116
# chr()用一个范围在range(256)内的(就是0~255)整数作参数,返回一个对应的字符
print(chr(65))  # A
print(chr(97))  # a
# ord()函数是chr()函数(对于8位的ASCII字符串)或unichr()函数(对于Unicode对象)的配对函数,
# 它以一个字符(长度为1的字符串)作为参数,返回对应的ASCII数值,或者Unicode数值,
# 如果所给的Unicode字符超出了你的Python定义范围,则会引发一个TypeError的异常
print(ord('A'))  # 65
print(ord('€'))  # 8364

 

"""高阶函数"""
# filter()函数用于过滤序列,过滤掉不符合条件的元素,返回一个迭代器对象,
# 如果要转换为列表,可以使用list()来转换。
# 可以使用列表解析式实现一样的效果
print(list(filter(lambda x: x % 3 == 0, range(20))))  # [0, 3, 6, 9, 12, 15, 18]
print([i for i in range(20) if i % 3 == 0])  # [0, 3, 6, 9, 12, 15, 18]
# map()会根据提供的函数对指定序列做映射。
# 第一个参数function以参数序列中的每一个元素调用function函数,返回包含每次function函数返回值的新列表
# 可以使用列表解析式实现一样的效果
print(list(map(lambda x: x ** 2, range(10))))  # [0, 1, 4, 9, 16, 25, 36, 49, 64, 81]
print([i ** 2 for i in range(10)])  # [0, 1, 4, 9, 16, 25, 36, 49, 64, 81]
print(list(map(lambda x, y: x * y, range(10), range(10, 20))))  # [0, 11, 24, 39, 56, 75, 96, 119, 144, 171]
# reduce会根据函数对参数序列中元素进行累积。需要先引入,from functools import reduce
print(reduce(lambda x, y: x + y, range(101), 100))  # 5150
# 一句代码实现阶乘函数
def fac(n):
    return reduce(lambda x, y: x * y, range(1, n + 1))
print(fac(10))  # 3628800

 

python3所有内置函数用法,备用

"""abs()函数返回数字的绝对值"""
"""all()函数用于判断给定的可迭代参数iterable中的所有元素是否都为True,如果是返回True,否则返回 False"""
"""any()函数用于判断给定的可迭代参数iterable是否全部为False,如果是则返回False,否则返回True"""
r"""
    ascii()函数类似repr()函数,返回一个表示对象的字符串,
    但是对于字符串中的非ASCII字符则返回通过repr()函数使用\x,\u或\U编码的字符。
    生成字符串类似Python2版本中repr()函数的返回值。
"""
"""bin()返回一个整数int或者长整数long int的二进制表示"""
"""bool()函数用于将给定参数转换为布尔类型,如果没有参数,返回False"""
"""bytearray()方法返回一个新字节数组。这个数组里的元素是可变的,并且每个元素的值范围:0 <= x < 256"""
"""bytes函数返回一个新的bytes对象,该对象是一个0 <= x < 256区间内的整数不可变序列。它是bytearray的不可变版本"""
"""
    callable()函数用于检查一个对象是否是可调用的。如果返回True,object仍然可能调用失败;但如果返回False,调用对象ojbect绝对不会成功
    对于函数,方法,lambda函式,类,以及实现了__call__方法的类实例,它都返回True
"""
"""chr()用一个范围在range(256)内的(就是0~255)整数作参数,返回一个对应的字符"""
"""classmethod修饰符对应的函数不需要实例化,不需要self参数,但第一个参数需要是表示自身类的cls参数,可以来调用类的属性,类的方法,实例化对象等"""
"""compile()函数将一个字符串编译为字节代码"""
"""complex()函数用于创建一个值为real + imag * j的复数或者转化一个字符串或数为复数。如果第一个参数为字符串,则不需要指定第二个参数"""
"""delattr函数用于删除属性"""
"""dict()函数用于创建一个字典"""
"""
    dir()函数不带参数时,返回当前范围内的变量、方法和定义的类型列表;带参数时,返回参数的属性、方法列表。如果参数包含方法__dir__(),
    该方法将被调用。如果参数不包含__dir__(),该方法将最大限度地收集参数信息
    """
"""divmod()函数把除数和余数运算结果结合起来,返回一个包含商和余数的元组(a // b, a % b),在python2.3版本之前不允许处理复数"""
"""enumerate()函数用于将一个可遍历的数据对象(如列表、元组或字符串)组合为一个索引序列,同时列出数据和数据下标,一般用在for循环当中"""
"""eval()函数用来执行一个字符串表达式,并返回表达式的值"""
"""exec执行储存在字符串或文件中的Python语句,相比于eval,exec可以执行更复杂的Python代码"""
"""
    filter()函数用于过滤序列,过滤掉不符合条件的元素,返回一个迭代器对象,如果要转换为列表,可以使用list()来转换。
    该接收两个参数,第一个为函数,第二个为序列,序列的每个元素作为参数传递给函数进行判,然后返回True或False,最后将返回True的元素放到新列表中
"""
"""float()函数用于将整数和字符串转换成浮点数"""
"""
    format()
    Python2.6开始,新增了一种格式化字符串的函数str.format(),它增强了字符串格式化的功能。
    基本语法是通过{}和:来代替以前的%。format函数可以接受不限个参数,位置可以不按顺序
"""
"""frozenset()返回一个冻结的集合,冻结后集合不能再添加或删除任何元素"""
"""getattr()函数用于返回一个对象属性值"""
"""globals()函数会以字典类型返回当前位置的全部全局变量"""
"""hasattr()函数用于判断对象是否包含对应的属性"""
"""hash()用于获取取一个对象(字符串或者数值等)的哈希值"""
"""help()函数用于查看函数或模块用途的详细说明"""
"""hex()函数用于将10进制整数转换成16进制,以字符串形式表示"""
"""id()函数用于获取对象的内存地址"""
"""
    input()
    Python3.x中input()函数接受一个标准输入数据,返回为string类型。
    Python2.x中input()相等于eval(raw_input(prompt)),用来获取控制台的输入。
    raw_input()将所有输入作为字符串看待,返回字符串类型。而input()在对待纯数字输入时具有自己的特性,它返回所输入的数字的类型(int,float)
"""
"""int()函数用于将一个字符串或数字转换为整型"""
"""
    isinstance()函数来判断一个对象是否是一个已知的类型,类似type()。
    isinstance()与type()区别:
    type()不会认为子类是一种父类类型,不考虑继承关系。
    isinstance()会认为子类是一种父类类型,考虑继承关系。
    如果要判断两个类型是否相同推荐使用isinstance()
"""
"""issubclass()方法用于判断参数class是否是类型参数classinfo的子类"""
"""iter()函数用来生成迭代器"""
"""len()方法返回对象(字符、列表、元组等)长度或项目个数"""
"""list()方法用于将元组转换为列表"""
"""locals()函数会以字典类型返回当前位置的全部局部变量"""
"""
    map()会根据提供的函数对指定序列做映射。
    第一个参数function以参数序列中的每一个元素调用function函数,返回包含每次function函数返回值的新列表
"""
"""max()方法返回给定参数的最大值,参数可以为序列"""
"""
    memoryview()函数返回给定参数的内存查看对象(Momory view)。
    所谓内存查看对象,是指对支持缓冲区协议的数据进行包装,在不需要复制对象基础上允许Python代码访问
"""
"""min()方法返回给定参数的最小值,参数可以为序列"""
"""next()返回迭代器的下一个项目"""
"""object类"""
"""oct()函数将一个整数转换成8进制字符串"""
"""open()函数用于打开一个文件,创建一个file对象,相关的方法才可以调用它进行读写"""
"""
    ord()函数是chr()函数(对于8位的ASCII字符串)或unichr()函数(对于Unicode对象)的配对函数,
    它以一个字符(长度为1的字符串)作为参数,返回对应的ASCII数值,或者Unicode数值,
    如果所给的Unicode字符超出了你的Python定义范围,则会引发一个TypeError的异常
"""
"""pow()方法返回xy(x的y次方)的值"""
"""
    print()方法用于打印输出,最常见的一个函数。
    print在Python3.x是一个函数,但在Python2.x版本不是一个函数,只是一个关键字
"""
"""property()函数的作用是在新式类中返回属性值"""
"""
    Python3range()函数返回的是一个可迭代对象(类型是对象),而不是列表类型,所以打印的时候不会打印列表
    Python3list()函数是对象迭代器,可以把range()返回的可迭代对象转为一个列表,返回的变量类型为列表。
    Python2range()函数返回的是列表
"""
"""repr()函数将对象转化为供解释器读取的形式"""
"""reversed函数返回一个反转的迭代器"""
"""round()方法返回浮点数x的四舍五入值"""
"""set()函数创建一个无序不重复元素集,可进行关系测试,删除重复数据,还可以计算交集、差集、并集等"""
"""setattr函数对应函数getatt(),用于设置属性值,该属性必须存在"""
"""slice()函数实现切片对象,主要用在切片操作函数里的参数传递"""
"""
    sorted()函数对所有可迭代的对象进行排序操作。
    sort与sorted区别:
    sort是应用在list上的方法,sorted可以对所有可迭代的对象进行排序操作。
    list的sort方法返回的是对已经存在的列表进行操作,而内建函数sorted方法返回的是一个新的list,而不是在原来的基础上进行的操作
"""
"""staticmethod返回函数的静态方法"""
"""str()函数将对象转化为适于人阅读的形式"""
"""sum()方法对系列进行求和计算"""
"""
    super()函数是用于调用父类(超类)的一个方法。
    super是用来解决多重继承问题的,直接用类名调用父类方法在使用单继承的时候没问题,
    但是如果使用多继承,会涉及到查找顺序(MRO)、重复调用(钻石继承)等种种问题。
    MRO就是类的方法解析顺序表,其实也就是继承父类方法时的顺序表
"""
"""tuple函数将列表转换为元组"""
"""type()函数如果你只有第一个参数则返回对象的类型,三个参数返回新的类型对象"""
"""vars()函数返回对象object的属性和属性值的字典对象"""
"""
    zip()函数用于将可迭代的对象作为参数,将对象中对应的元素打包成一个个元组,然后返回由这些元组组成的对象,
    这样做的好处是节约了不少的内存。我们可以使用list()转换来输出列表。
    如果各个迭代器的元素个数不一致,则返回列表长度与最短的对象相同,利用*号操作符,可以将元组解压为列表。
"""
"""
    __import__()函数用于动态加载类和函数。
    如果一个模块经常变化就可以使用__import__()来动态载入
"""

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值