python常用内置函数
-
any()和all()
-
any():当传入的可迭代对象有一个为True时,结果返回True
-
all():当传入的可迭代对象有一个为False时,结果返回False
print(any([0,'']))
print(any([0,'1']))
print(all([1,2,'']))
print(all([1,2,3]))
-
sorted(iterable, *, key=None, reverse=False)
排序
# 简单排序
numbers = [14, 5, 3, 1, 5, 6, 7, 2]
print(sorted(numbers)) # 从小到大
print(sorted(numbers, reverse=True)) # 倒序
和lambda结合使用
employee_salary = {
'Lily': 200,
'Jane': 280,
'Tome': 190,
'Mic': 500
}
按照薪资对employee_salary进行排序
print(sorted(employee_salary, key=lambda x: employee_salary[x]))
* **zip(*iterables)**
zip接收参数为可迭代的数据类型,返回一个元祖组成的迭代器。如果只有一个参数,返回只有一个元素的tuple(x,)
x = [1, 2, 3]
y = [4, 5, 6]
res = list(zip(x, y))
print(res)
* **map(function, iterable, ...)**
map将函数应用于iterable的每一个元素,返回一个迭代器
def getlower(x):
return x.lower()
names = ['JANE', 'LILY', 'TOM']
res = list(map(getlower, names))
print(res)
* **reduce()**
用传给 reduce 中的函数 function(有两个参数)先对集合中的第 1、2 个元素进行操作,得到的结果再与第三个数据用 function 函数运算
from functools import reduce
def add(x, y):
return x + y
print(reduce(add, [1, 2, 3, 4, 5]))
* **max()/min()**
max():求最大值
numbers = [1, 2, 3, 4, 5]
print(max(numbers))
和lambda结合
employee_salary = {
'Lily': 200,
'Jane': 280,
'Tome': 190,
'Mic': 500
}
print(max(employee_salary, key=lambda x: employee_salary[x]))
min():求最小值,用法同上
* **divmod()**
返回(商,余数)
print(divmod(11,3)) # (3, 2)
* **int()**
print(bin(18)) # 十进制---->二进制
print(hex(18)) # 十进制---->八进制
print(oct(18)) # 十进制---->十六进制
print(int('0b10010', 2)) # 二进制---->十进制
print(int('0o22', 8)) # 八进制---->十进制
print(int('0x12', 16)) # 16进制---->十进制
* **reversed()**
反转函数,返回一个迭代器
print(list(reversed([1, 3, 5, 7, 9])))
* **range(stop)**
range(start, stop[, step])
返回一个整数列表,一般用在for循环中,步长默认为1
print(list(range(5)))