Python数据类型:序列操作(allanysortsortedreserverzipenumerate)
Posted 晚风Adore
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python数据类型:序列操作(allanysortsortedreserverzipenumerate)相关的知识,希望对你有一定的参考价值。
作者在后面又新学了几个序列的操作,对Python数据类型(一):序列索引切片、字符串类型及常用方法这篇文章进行补充。
CONTENTS
序列操作
all(iterable) 与运算
可迭代参数iterable为元组或列表
若可迭代参数 iterable 中所有元素都为 True,all(iterable)返回True,否则返回False
相当于对iterable进行与运算
(若元素为 数字0 / None / False 则表示该元素为False,否则该元素为True)
空元组合空列表返回值为True!!!
print(all( '' )) # 空字符串
print(all( [] )) # 空列表
print(all( () )) # 空元组
print(all( (0,3,3) ))
print(all( [3,4,5] ))
print(all( [3,4,5,None] )) # None表示空元素
print(all([3,4,False]))
'''
True
True
True
False
True
False
False
'''
any(iterable) 或运算
若可迭代参数iterable全部为False,返回False,否则返回True
相当于对iterable进行或运算
print(any( [] ))
print(any( () ))
print(any( [3,4,False] ))
print(any( [False,None] ))
'''
False
False
True
False
'''
sort() && sorted() 排序
sort()
无返回值
只能用于List类型
不能用于Tuple类型,因为不能被修改
sorted(iterable, cmp, key, reverse=boolean)
返回值为排序后的序列
iterable:需要排序的可迭代参数,可以是字符串,元组,列表,字典
reverse:排序方式,默认为False,升序;True,降序。
li=[3,5,43,1,45,32]
li.sort()
print(li)
li=[3,5,23,1,45,32]
tup = (3,5,2,9)
sortedList1=sorted(li)
sortedList2=sorted(li,reverse=True) # 降序排序
sortedTuple=sorted(tup,reverse=True) # 元组类型排序后返回List类型
print(sortedList1)
print(sortedList2)
print(sortedTuple)
'''
[1, 3, 5, 32, 43, 45]
[1, 3, 5, 23, 32, 45]
[45, 32, 23, 5, 3, 1]
[9, 5, 3, 2]
'''
reserver() 反向排列
无返回值
反向排列List数据
li=[3,5,23,1,45,32]
li.reverse()
print(li)
'''
[32, 45, 1, 23, 5, 3]
'''
zip() 打包成元组
语法:zip(iterable1,iterable2,…)
将iterable对应的元素打包成一个个元组,若要使用需要用list()将其转换为列表
若长度不一致,则以长度最短的为返回长度
c = zip([3,5,7])
print(list(c))
print(zip([3,4,6],['sss','sdd','444']))
a = zip([3,4,6],['sss','sdd','444'])
print(list(a))
b = zip([3,4,6],['sss','sdd','444','dsf'])
print(list(b))
d1 = zip([5,6,8],['dds','ffs','trr'],[True,False,False])
print(list(d1))
d2 = zip([5,6,8],['dds','trr'],[True,False,False,True])
print(list(d2))
'''
[(3,), (5,), (7,)]
<zip object at 0x00000273B7F02A40>
[(3, 'sss'), (4, 'sdd'), (6, '444')]
[(3, 'sss'), (4, 'sdd'), (6, '444')]
[(5, 'dds', True), (6, 'ffs', False), (8, 'trr', False)]
[(5, 'dds', True), (6, 'trr', False)]
'''
enumerate() 打包元素和索引值
语法:enumerate(list/tuple/str)
将每个元素与其对应的索引值封装成一个元组,若要使用需要用list()将其转换为列表
如果是字典类型数据,封装索引值和键,与值无关
一般用在for循环中
for index,item in enumerate(list/tuple/str):
# index 索引值
# item 索引值对应的元素
pass
list1 = ['spring','summer','autunm','winter']
print(list(enumerate(list1)))
print(list(enumerate(list1,start=4))) #索引值从4开始
for index,item in enumerate(list1):
print(index,end=':')
print(item)
pass
#如果是字典类型数据,封装索引值和键,与值无关
dict1 = {'name':'zzd','age':23,'class':'19计算机'}
for item in enumerate(dict1):
print(item)
pass
'''
[(0, 'spring'), (1, 'summer'), (2, 'autunm'), (3, 'winter')]
[(4, 'spring'), (5, 'summer'), (6, 'autunm'), (7, 'winter')]
0:spring
1:summer
2:autunm
3:winter
(0, 'name')
(1, 'age')
(2, 'class')
'''
以上是关于Python数据类型:序列操作(allanysortsortedreserverzipenumerate)的主要内容,如果未能解决你的问题,请参考以下文章
Python json.dumps 特殊数据类型的自定义序列化操作