Python系列-python内置函数

abs(x)

返回数字的绝对值,参数可以是整数、也可以是浮点数。如果是复数,则返回它的大小

all(iterable)

对参数中的所有元素进行迭代,如果所有的元素都是True,则返回True,函数等价于

def any(iterable):
    for element in iterable:
        if element:
            return True
    return False  

any(iterable)

对参数中的所有元素进行迭代判断,只要一个元素为真,函数返回True。函数等价于

def any(iterable):
    for element in iterable:
        if element:
            return True
    return False  

assert

断言, 该函数属于一个单元运算的表达式。类似于lambda。但功能与 if...not类似。如果你能确定你的表达式一定为真可以使用。如果表达式为假则返回一个 AssertionError 错误

程序立即中断

a = 1
assert a >= 1, "Error value"
print("OK")
结果:
OK  

bin(x)

将一个十进制数转换为一个二进制字符串.

bool([x])

对列表[x]中的所有值进行bool判断,当列表中所有的元素都为True时则返回True,否则返回False,能返回False的值类型有:‘’,None,0,(),[],{}。与all()函数类似

print(bool([‘a‘,1,2.4]))  # True
print(bool(None))  # False
print(bool(()))  # False
print(bool([]))  # False
print(bool({}))  # False
print(bool(‘‘))  # False
print(bool(0))   # False  

callable(object)

检查对象object是否可调用,可以被调用返回True,否则返回False:1、函数、类是可以被调用的;2、实例是不可以被调用的,除非类中声明了__call__方法

def func1():
    print(‘a‘)
a = ‘123‘
print(callable(a))  # False
print(callable(func1))  # True  

divmod(x,y)

返回x/y的商和余数,结果为元组类型

print(divmod(5,3))  # (1, 2)  

ord(c)

返回字符c的ASCII码,x为字符,返回数字型

print(ord(‘a‘))  # 97  

chr(x)

返回ASCII码x对应的字符, x 为整型,返回字符

 print(chr(97))   # ‘a‘  

classmethod(function)

在定义的类中为函数返回一个类方法,主要功能:1、注解,用来说明这个方式是个类方法;2、类方法即可被类调用,也可以被实例调用;3、类方法类似于Java中的static方法;4、类方法中不需要有self参数

enumerate(iterable, start=0)

返回一个可枚举的对象。该对象的next()方法将返回一个tuple.start为开始的序号默认从0开始。或者也可以通过list 或 tuple来转换

print(list(enumerate((‘aa‘,‘bb‘,‘cc‘),start=2)))  

等价于

def enumerate(sequence, start=0):
    n = start
    for elem in sequence:
        yield n, elem
        n += 1  

eval(expression)

计算表达式expression的值

lambda

lambda并不是python的内置函数,而是一个函数表达式

f_lam = lambda x: x * 2
print(f_lam(10))  # 20  

map(function, iterable, ...)

将传入的列表中的每个值进行一次函数运算,python3.x中返回的为 <map object at 0x006AFA30>对象,要获取值需要用list 或 tuple转换

li = (1, 2, 3, 4)
f_map = map(lambda x: x + 3, li)
print(f_map)          # python2.x结果[4, 5, 6, 7]
print(list(f_map))    # python3.x结果[4, 5, 6, 7]  

reduce()

reduce() 第一个参数是函数,第二个是 序列(列表或元组)。但是,其函数必须接收两个参数。

reduce()是将传人的函数作用在序列的第一个元素得到结果后,把这个结果继续与下一个元素作用(累积计算).

from functools import reduce
print(reduce(lambda x,y:sum([x,y]),range(1,101)))  #第一个参数是一个函数,第二个参数是一个序列

max(iterable, *[, key, default])

对一个列表或元素的数据进行迭代,返回最大值.可以通过制定函数来判断

def func(i):
    t = divmod(i,3)
    return t[1]  

li = (1,5,3,2,9,19,24)
print(max(li))             # 24
print(max(li,key=func))    # 5 对li中的数据进行取模后的最大值  

max(iterable, *[, key, default])

与max()类似,取最小值

sorted(iterable[, key][, reverse])

对参数中的元素进行排序,默认从小到大排序。可以指定排序计算方法key=function,是否倒序排列reverse=True

def func(i):
    t = divmod(i,3)
    return t[1]  

li = (1,5,3,2,9,19,24)
print(sorted(li))
# [1, 2, 3, 5, 9, 19, 24]
print(sorted(li,reverse=True))
# [24, 19, 9, 5, 3, 2, 1]
print(sorted(li,key=func))
# [3, 9, 24, 1, 19, 5, 2]
print(sorted(li,key=func,reverse=True))
# [5, 2, 1, 19, 3, 9, 24]  

filter(function, iterable)

和map的执行方式一样,对于一个迭代器iterable的元素进行function计算,将计算的结果进行过滤,符合表达式结果的才返回.在python3.x中返回的结果为<filter object at 0x021CA610>对象,要获取值需要用list 或 tuple转换。

f_filter = filter(lambda x: x > 30, map(lambda y: y * 10, li))
print(f_filter)         # python2.x结果[40]
print(list(f_filter))   # python3.x结果[40]  

zip(*iterables)

将两个元组或列表的值进行合并成一个新的列表.

a = (1, 2, 3)
y = [6,7,8]
# print(zip(a, y))  # [(1, 6), (2, 7), (3, 8)]  

isinstance

isinstance(obj,obj2)  返回obj对象是不是由obj2创建的,或者 obj对象是 obj2 对象的基类创建的

a = 1
print(isinstance(a,int)) # True
class A(object):
    pass  

class B(A):
    pass  

b = B()
print(isinstance(b, B))  # True
print(isinstance(b, A))  # True  

issubclass

issubclass(C,B)  判断类C是不是类B的子类

class A(object):
    pass  

class B(A):
    pass  

print(issubclass(B,A))
print(issubclass(A,object))  

原文地址:https://www.cnblogs.com/ls-2018/p/8781038.html

时间: 2024-10-21 16:24:07

Python系列-python内置函数的相关文章

python中的内置函数getattr()

在python的官方文档中:getattr()的解释如下: getattr(object, name[, default]) Return the value of the named attribute of object. name must be a string. If the string is the name of one of the object’s attributes, the result is the value of that attribute. For examp

python之路——内置函数与匿名函数

内置函数 python里的内置函数.截止到python版本3.6.2,现在python一共为我们提供了68个内置函数.它们就是python提供给你直接可以拿来使用的所有函数.这些函数有些我们已经用过了,有些我们还没用到过,还有一些是被封印了,必须等我们学了新知识才能解开封印的.那今天我们就一起来认识一下python的内置函数.这么多函数,我们该从何学起呢? 上面就是内置函数的表,68个函数都在这儿了.这个表的顺序是按照首字母的排列顺序来的,你会发现都混乱的堆在一起.比如,oct和bin和hex都

python学习交流 - 内置函数使用方法和应用举例

内置函数 python提供了68个内置函数,在使用过程中用户不再需要定义函数来实现内置函数支持的功能.更重要的是内置函数的算法是经过python作者优化的,并且部分是使用c语言实现,通常来说使用内置函数相比于用户自己定义函数实现相同功能,在执行效率和对内存的分配和使用上是要更加理想的.所以理解和熟练运用python中的内置函数,不仅可以增强代码的可读性,同时也可以提升代码的品质.下面对内置函数的使用方法进行分类介绍,以方便归纳理解. 一.查看作用域中变量相关 global () 功能:查看全局作

python之枚举--内置函数-enumerate()

python之枚举 内置函数 enumearate() enumerate()是python的内置函数 enumerate在字典上是枚举.列举的意思 对于一个可迭代的(iterable)/可遍历的对象(如列表.字符串),enumerate将其组成一个索引序列,利用它可以同时获得索引和值 enumerate多用于在for循环中得到计数 enumerate()使用 如果对一个列表,既要遍历索引又要遍历元素时,首先可以这样写: list=["这","是","一个

Python标准库 内置函数print objects sep &#39; &#39; end &#39;\n&#39; file sys st

本函数是实现对象以字符串表示的方式格式化输出到流文件对象file里.其中所有非关键字参数都按str()方式进行转换为字符串输出,关键字参数sep是实现分隔符,比如多个参数输出时想要输出中间的分隔字符:关键字参数end是输出结束时的字符,默认是换行符\n:关键字参数file是定义流输出的文件,可以是标准的系统输出sys.stdout,也可以重定义为别的文件:参数flush是立即把内容输出到流文件,不作缓存. 例子: #print() print(1, 2, 3, sep = ',', end =

part2:Python 变量及简单类型,print 函数介绍,Python 关键字、内置函数介绍

Python是弱类型语言,关于弱类型有两个含义:(1).所有的变量无须声明即可使用,或者说对从末用过的变量赋值就是声明了该变量:(2).变量的数据类型可以随时改变,同一个变量可以进行多次赋值,可以赋数值型和字符串型值. 一. 单行注释和多行注释 注释可提高程序可读性,用于解释某行或某部分程序的作用和功能.此外注释也是调试程序的重要方式,在调试时可将不希望编译.执行的代码注释掉.注释还可以为别人或自己过一段时间后能读懂代码的目的提供帮助.合理的代码注释占源代码 1/3 左右. Python语言不能

python 关键字和内置函数

Python关键字(保留字)一览表 来自 http://c.biancheng.net/view/4188.html 保留字是 Python 语言中一些已经被赋予特定意义的单词,这就要求开发者在开发程序时,不能用这些保留字作为标识符给变量.函数.类.模板以及其他对象命名. 表 1 Python 保留字一览表 and as assert break class continue def del elif else except finally for from False global if im

Python经常使用内置函数介绍【filter,map,reduce,apply,zip】

Python是一门非常简洁,非常优雅的语言,其非常多内置函数结合起来使用,能够使用非常少的代码来实现非常多复杂的功能,假设相同的功能要让C/C++/Java来实现的话,可能会头大,事实上Python是将复杂的数据结构隐藏在内置函数中,用C语言来实现,所以仅仅要写出自己的业务逻辑Python会自己主动得出你想要的结果.这方面的内置函数主要有,filter,map,reduce,apply,结合匿名函数,列表解析一起使用,功能更加强大.使用内置函数最显而易见的优点是: 1. 速度快,使用内置函数,比

Python基础day-11[内置函数(未完),递归,匿名函数]

内置函数: abs() : 返回数字的绝对值.参数可以是整数或浮点数,如果参数是复数,则返回复数的模. print(abs(0.2)) print(abs(1)) print(abs(-4)) print(abs(-0.2)) print(abs(3+4j)) 执行结果: D:\Python\Python36-32\python.exe E:/Python/DAY-11/tmp.py 0.2 1 4 0.2 5.0 Process finished with exit code 0 all():

python学习之--内置函数:

Python内置函数: Python内置了很多有用的函数,我们可以直接调用.要调用一个函数,需要知道函数的名称和参数,比如求绝对值的函数abs,只有一个参数. 1. 内置函数调用之--abs()函数: 1 >>> abs(12) 2 12 3 >>> abs(-89) 4 89 5 >>> #毫无疑问abs是求绝对值的一个python内置函数. 6 ... 7 >>> 调用函数的时候,如果传入的参数数量不对,会报TypeError的错