列表、元组、字符串的共同点
- 都可以通过索引得到每一个元素
- 默认索引值总是从0开始
- 可以通过分片的方法得到一个范围内的元素集合
- 有很多共同的操作符:重复操作符、拼接操作符、成员关系操作符
所以把列表、元组和字符串三者统称为序列
序列常见的BIF
1. list([iterable]):用于把一个可迭代对象转换为列表
- list()方法用于把一个可迭代对象转换为列表
什么是迭代呢???
所谓迭代,就是重复反馈过程的活动,其目的通常是为了接近并达到所需的目标或结果,每一次对过程的重复被称为一次“迭代”,而每一次迭代得到的结果会被用来作为下一次迭代的初始值。。。。。就目前来说,迭代就是一个for 循环,今后会介绍迭代器 - list()方法要么不带参数,要么带一个迭代器作为一个参数,而序列天生就是可迭代的对象
自己动手实现list()方法
sequence = input("请输入一个序列:")
sequence = str(sequence)
a = list()
for i in sequence:
a.append(i)
print(a)
2. tuple([iterable]):把一个可迭代对象转换为元组
3. str(obj):把obj对象转换为字符串
4.len(sbu):返回sub参数的长度
5. max():返回序列或者参数集合中的最大值
6.min():返回序列或者参数集合中的最小值
attention:使用max()方法和min()方法都要保证序列或参数的数据类型统一,否则会出错
max(tuple1)的实现方式
tuple1 = input("请输入一个元组:")
tuple1 = tuple(tuple1)
max1 = tuple1[0]
for i in tuple1:
if i > max1:
max1 = i
print(max1)
7. sum(iterable,[start]):返回iterable和可选参数start的总和
- 可选参数start,如果设置该参数,表示从该值开始加起,默认值是0
attention:不是数据类型不能实现sum操作
8. sorted(iterable, key = None, reverse = False):返回一个排序的列表,默认从小到大排
- 使用方法同list().sort()
- 列表的内置方法sort()是实现列表原地排序,而sorted()是返回一个排序后的新列表
9. reversed(sequence):返回逆向迭代序列的值
- 使用方法同list().reverse()
- 列表的内置方法reverse()是实现列表原地翻转,而reversed()是返回一个排序后的迭代器对象
10. enumerate(iterable):生成由二元组(二元组就是元素数量为2的元组)构成的一个迭代对象,每个二元组由可迭代参数的索引号及其对应的元素组成
zip(iter1[,iter2[…]]):返回由各个迭代参数共同组成的元组
Task
0. 我们根据列表、元组和字符串的共同特点,把它们三统称为什么?
序列
扫描二维码关注公众号,回复:
12451716 查看本文章
![](/qrcode.jpg)
1. 请问分别使用什么BIF,可以把一个可迭代对象转换为列表、元组和字符串?
list()
tuple()
str()
2. 你还能复述出“迭代”的概念吗?
迭代就是重复反馈过程的活动,其目的通常是为了接近并达到所需的目标或结果
3. 你认为调用 max(‘I love FishC.com’) 会返回什么值?为什么?
‘v’,因为v的ASCALL码最大
4. 哎呀呀,现在的小屁孩太调皮了,邻居家的孩子淘气,把小甲鱼刚写好的代码画了个图案,麻烦各位鱼油恢复下代码~~
5. 猜想一下 min() 这个BIF的实现过程
6. 视频中我们说 sum() 这个BIF有个缺陷,就是如果参数里有字符串类型的话就会报错,请写出一个新的实现过程,自动“无视”参数里的字符串并返回正确的计算结果