day04 list tuple
今日内容:
1. 列表
2. 列表的增删改查
3. 列表的嵌套
4. 元组和元组嵌套
5. range
列表
列表: 能装对象的对象. 有顺序的(按照我们添加的顺序保存)
在代码中使用[]表示列表. 列表中可以放任意的数据, 每一项数据与数据之间用逗号隔开
注意. 列表是可以发⽣改变的. 这里和字符串不一样
列表同样拥有索引和切片
- 增加
list和str是不一样的. lst可以发⽣改变. 所以直接就在原来的对象上进行了操作
append() #末尾添加
insert() #插入(索引,内容)
extend() #迭代添加
- 删除
pop() 删除最后一个
pop(索引) 删除指定位置
remove() 删除指定元素
clear() 清空
del 列表[切片] ——切片删除
- 修改
列表[索引]=‘修改内容’
列表[切片]=‘修改内容’ ——切片修改 如果步长不是1,注意修改的元素个数
没有步长或者步长是1,则不关心个数
- 查询
列表是一个可迭代对象,可以进行for循环
- 其他操作
1.count()
2.index()
3.sort() 排序
4.sort(reverse = True) 倒序
5.reverse() 翻过来 原本的列表顺序反转
元组
tuple: 只读列表。由() 组成。特点:不可变
如果只有一个元素。 末尾加逗号
不可变:(指的是) 元组内部第一层元素的内存地址
元组只能查。
range
range(n): [0,n)
range(m,n): [m,n)
range(m,n,p): 从m到n, 每隔p个取一个
range多数用于for循环
作业:
# 12.开发敏感词语过滤程序,提示⽤户输⼊评论内容,如果⽤户输⼊的内容中
# 包含特殊的字符:
# 敏感词列表 li = ["苍⽼师", "东京热", "武藤兰", "波多野结⾐"]
# 则将⽤户输⼊的内容中的敏感词汇替换成等⻓度的*(苍⽼师就替换***),并添
# 加到⼀个列表中;如果⽤户输⼊的内容没有敏感词汇,则直接添加到上述的列
# 表中。
# lst = []
# li = ["苍⽼师", "东京热", "武藤兰", "波多野结衣"]
#
# content = input("请输入你的评论:")
# for el in li:
# if el in content:
# content = content.replace(el,"*"*len(el))
# lst.append(content)
#
# print(lst)
# 14. 把班级学生数学考试成绩录入到一个列表中:
# 并求平均值. 要求: 录入的时候 要带着人名录入, 例如: 张三_44(名字_分数)
lst = []
while 1 :
content = input("请输入成绩和姓名(q退出):")
if content.upper() == 'Q':
break
else:
lst.append(content)
sum = 0
for el in lst:
sum += int(el.split('_')[1])#切割变成列表
avg = sum/len(lst)
print(avg)