文章目录
all函数
判断传入迭代值是否皆为真,空值也判断为真
>>> all([1,2,4,0]) #中间的一个值为0,因此结果为false
False
any函数
判断传入迭代值有一个值为真,则返回True
>>> any([1,2,4,0])
True
bool函数
将传入的值转换成布尔值
>>> bool('1')
True
bytes函数,decode函数
将字符串进行指定格式的编解码
a = bytes('你好',encoding='utf-8') #一个汉字由三个字节进行表示
print(a)
b = a.decode('utf-8')
print(b)
结果:
b'\xe4\xbd\xa0\xe5\xa5\xbd'
你好
chr函数,ord函数
asci码和字符之间的转换
>>> chr(97)
'a'
>>> ord('a')
97
divmod函数
将两个数像除得商并取余
>>> divmod(10,3)
(3, 1)
round函数
将一个数进行四舍五入的处理
enumerate函数
将可迭代对象进行枚举
>>> list(enumerate(seasons))
[(0, 'Spring'), (1, 'Summer'), (2, 'Fall'), (3, 'Winter')]
>>> list(enumerate(seasons, start=1)) # 下标从 1 开始
[(1, 'Spring'), (2, 'Summer'), (3, 'Fall'), (4, 'Winter')]
range函数
用于创建一个整数列表
>>> range(0, 10, 3) # 步长为 3
# python2.7中是直接生成列表,3.x中是生成一个对象,用到的时候才会展开
# [0, 3, 6, 9]
slice函数
slice() 函数实现切片对象,主要用在切片操作函数里的参数传递,用这种防范进行切片操作,程序可读性更强
x = slice(1,5,2) #设定起始终止位置,步长为2
l = "python"
l[x]
结果:
'yhn'
zip函数
将两个序列对象进行组合并返回一个zip对象
>>>a = [1,2,3]
>>> b = [4,5,6]
>>> c = [4,5,6,7,8]
>>> zipped = zip(a,b) # 打包为元组的列表
[(1, 4), (2, 5), (3, 6)]
>>> zip(a,c) # 元素个数与最短的列表一致
[(1, 4), (2, 5), (3, 6)]
>>> zip(*zipped) # 与 zip 相反,*zipped 可理解为解压,返回二维矩阵式
[(1, 2, 3), (4, 5, 6)]
max(min)
函数
max函数用于将可迭代对象,输出最大值,如果是字典则比较key的值
其中有一个使用key的用法是比较高级的用法
people = [
{"name":"hyj","age":18},
{"name":"shuang","age":16},
{"name":"feng","age":22}
]
max(people,key=lambda dic:dic["age"])
#由于字典之间无法直接比较,因此需要传入一个key指定根据字典的哪个key进行比较
结果:
{'name': 'feng', 'age': 22}
sort
函数
sorted() 函数对所有可迭代的对象进行排序操作
sort 是应用在 list 上的方法,sorted 可以对所有可迭代的对象进行排序操作。
list 的 sort 方法返回的是对已经存在的列表进行操作,无返回值,而内建函数 sorted 方法返回的是一个新的 list,而不是在原来的基础上进行的操作
- 语法
sorted(iterable[key[, reverse]])
- key:和max用法一样,指定得迭代序列中的一项作为排序项
- reverse – 排序规则,reverse = True 降序 , reverse = False 升序(默认)
people = [
{"name":"hyj","age":18},
{"name":"shuang","age":16},
{"name":"feng","age":22}
]
sorted(people,key=lambda dic,dic["age"],reverse=True)
#指定年龄来进行降序排列
结果:
[{'name': 'feng', 'age': 22}, {'name': 'hyj', 'age': 18}, {'name': 'shuang', 'age': 16}]