Python 常用内置函数 二

时间:2023-02-24 15:30:00

enumerate

enumerate 函数用于将一个可遍历的数据对象组合为一个索引序列,同时列出数据和数据下标,一般用在 for 循环当中。

enumerate(sequence, [start=0])

sequence 是一个可迭代对象

start 默认从0开始

返回enumerate枚举对象。

常用于计数或者遍历对象下标他们恰好对应

for index, ite in enumerate(range(10)):
    print(index, ite)

sum

sum方法对序列进行求和计算。

sum(iterable[, start])

iterable 是一个可迭代对象,对象中的每个元素必须是int的子类。

start 默认为0,如果存在计算结果后加上start值。

sum(range(10), 10)
# 输出结果是 55

列表展开。当然性能未必好。并且这里start不能省略,否则抛出异常

l = [[1,2],[3,4]]
sum(l, [])
# 输出结果
[1, 2, 3, 4]

bool

bool 函数用于将给定参数转换为布尔类型,如果没有参数,返回 False。bool 是 int 的子类。

bool(x)

常用于判定

# 可以使用 逻辑符号连接
bool(True and False)
# 直接判定
bool(False)
# 都将返回false

range

Python3 range() 返回的是一个可迭代对象(类型是对象)

range(start, stop[, step])

start 开始

stop 结束 不包含最后一个

step 步长

注意:python2.x range() 函数可创建一个整数列表,一般用在 for 循环中。

返回值是一个迭代器

常用于计数

hasattr

函数用于判断对象是否包含对应的属性

hasattr(object, name)
# object 是一个对象
# name 字符串
# 如果对象有该属性返回 True,否则返回 False。s

常用于判定属性

class Test:

    def hello(self, ):
        print('hello')


t = Test()
setattr(t, 'a', 'b')
print(hasattr(t, 'a'))

round

返回浮点数x的四舍五入值

语法

round( x [, n]  )

x 数值表达式

n 数值表达式 表示小数点数

import random
# 保留一个小数
round(random.randint(5, 9) / 3, 1)

next

返回迭代器的下一个项目。

语法

next(iterable[, default])

iterable 可迭代对象

default 用于设置在没有下一个元素时返回该默认值,如果不设置,又没有下一个元素则会触发 StopIteration 异常。

返回下一个项目

常用于获取某个值

next(index for index, ite in enumerate(ite['fcPrice']) if not ite)
# 直接使用,如若不确定是否一定存在 必须 捕捉 StopIteration 异常
next((ite for ite in range(2) if ite > 3), None)