Python序列

列表、元组和字符串的共同点:

  • 都可以通过索引得到每一个元素
  • 默认的索引值总是从0开始
  • 可以通过分片的方法得到一个范围内的元素的集合
  • 有很多共同的 操作符(重复操作符、拼接操作符、成员关系操作符)

一、list()把一个可迭代对象转换为列表

通过help()方法,我们可以看到list本身作为一个方法,它的两个形态。

Help on class list in module builtins:

class list(object)
 |  list(iterable=(), /)

例如:

str1="I love you"
print(list(str1))

#输出
['I', ' ', 'l', 'o', 'v', 'e', ' ', 'y', 'o', 'u']

二、tuple()把一个可迭代对象转换为元组
通过help()方法,我们可以看到tuple本身作为一个方法,它的两个形态。

Help on class tuple in module builtins:

class tuple(object)
 |  tuple(iterable=(), /)

那么它和list()方法使用起来都相似,就不举例了。
三、max()和min()方法
max():返回序列或参数集合中的最大值。
min():返回序列或参数序列中的最小值。

a="I love you"
print(max(a))

y	#输出

字符之间是通过ASCII码进行比较。
max()和min()方法中的参数的类型必须相同:

list1=[1,89,-78,0,21,'a']
print(max(list1))

#错误提示
TypeError: '>' not supported between instances of 'str' and 'int'

max()和min()方法是不支持字符串型和整型之间的比较。
四、sum(iterable[,start=0])返回序列iterable和可选参数start的总和

numbers=[1.2,3.4,5.6]
print(sum(numbers,1))

11.2	#输出

但是sum()不能实现字符串与数字之间的相加

numbers=[1.2,3.4,5.6]
numbers.append('a')
print(sum(numbers,1))

#错误提示
TypeError: unsupported operand type(s) for +: 'float' and 'str'

sum()也不支持字符串型的相加

chars="I love you"
print(sum(chars))

#错误提示
TypeError: unsupported operand type(s) for +: 'int' and 'str'

五、sorted(iterable, key=None, reverse=False)函数对所有可迭代的对象进行排序操作。
key :主要是用来进行比较的元素,只有一个参数,具体的函数的参数就是取自于可迭代对象中,指定可迭代对象中的一个元素来进行排序。
reverse:排序规则,re
verse = True 降序 , reverse = False 升序(默认)。

sort()与sorted()的区别:
sort 是应用在 list 上的方法,sorted 可以对所有可迭代的对象进行排序操作。list 的 sort 方法返回的是对已经存在的列表进行操作,而内建函数 sorted 方法返回的是一个新的 list,而不是在原来的基础上进行的操作。

六、reversed(list/tuple/string/range)返回一个反转的迭代器
当我们直接使用reversed()方法时:

numbers=[1,2,3,4]
print(reversed(numbers))

#输出
<list_reverseiterator object at 0x000000684FD3C088>

此处返回的是一个迭代器,我们可以通过list()方法将它转换为一个列表。

numbers=[1,2,3,4]
print(list(reversed(numbers)))

[4, 3, 2, 1]	#输出

七、enumerate(interable, [start=0])函数用于将一个可遍历的数据对象(如列表、元组或字符串)组合为一个索引序列,同时列出数据和数据下标,一般用在 for 循环当中。
start:下标起始位置。

seasons=['Spring','Summer','Fall','Winter']
print(enumerate(seasons))

#输出
<enumerate object at 0x0000004FAC194D68>

它的返回值是一个枚举对象,我们也可以通过list()方法将他们转换为列表显示出来。

seasons=['Spring','Summer','Fall','Winter']
print(list(enumerate(seasons)))

#输出
[(0, 'Spring'), (1, 'Summer'), (2, 'Fall'), (3, 'Winter')]

八、zip(interable,…)函数

a=[1,2,3,4,5]
b=["runoob",'baidu','goole']
print(list(zip(a,b)))

[(1, 'runoob'), (2, 'baidu'), (3, 'goole')]

与zip相反,zip(*)可解释为解压

a=[1,2,3,4,5]
b=["runoob",'baidu','goole']
print(list(zip(a,b)))
a1,b1=zip(*zip(a,b))
print(list(a1))
print(list(b1))

#输出
[(1, 'runoob'), (2, 'baidu'), (3, 'goole')]
[1, 2, 3]
['runoob', 'baidu', 'goole']

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

柳叶lhy

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值