一、变量的数据类型(2)
1.list 类型
列表的特点:
列表是一个可变的数据类型
列表由[]来表示, 每一项元素使用逗号隔开. 列表什么都能装. 能装对象的对象.
列表可以装大量的数据
列表的索引和切片:
列表和字符串一样. 也有索引和切片. 只不过切出来的内容是列表
索引的下标从0开始
[起始位置:结束位置:步长]
*列表的增删改查:
(1). 增加
append() 追加
insert(index, 元素) 在index位置添加元素
extend() 迭代添加
(2). 删除
pop(index) 按照位置删除元素
remove(元素) 直接删除元素
del 切片.
clear() 清空列表
(3). 修改
索引修改
切片修改
(4). 查询
用for循环来实现
常用操作
1. sort() 排序 reverse=True降序
2. reverse() 翻转
3. len() 求长度
列表的嵌套
用降维思维. 一层一层看便于理解操作
2. tuple 类型
元组是一个只读列表,只能看不能操作
使用()表示元组
如果元祖中只有一个元素(元素, )
空元组: tuple()
元祖是一个可迭代对象, 可以使用for循环
二、range用法
range()是一个可迭代对象
与切片的特点和操作相同
拓展:
使用range和for循环来获取列表中的索引
for i in range(len(列表)):
i 索引
列表[i] 元素
查找li=["TAIBAI","ale xC","AbC","egon","RiTian","Wusir","aqc"]列表中的元素,移除每个元素的空格,并找出"A"或"a"开头以"c"结尾后添加到一个新的列表后打印
代码:
1 li =["TaiBai","ale xC","AbC ","egon","ri TiAn","WuSir"," aqc"] 2 new = [] 3 for i in li: 4 i.replace(""," ") 5 if i.endswith("c"): 6 if i.upper()!="a": 7 new.append(i) 8 print(new)
开发一个敏感词过滤程序,li=["苍老师","东京热","武藤兰","波多野结衣"],如果输入的内容中含有li列表中的词汇则将等量的字符串替换为*,然后添加到一个新的列表输出。
代码如下:
li = ["苍老师","东京热","武藤兰","波多野结衣"] new = [] content = input("请输入内容") for i in li: if i in content: content = content.replace(i,"*"*len(i)) new.append(content) print(new)
将学生的数学考试成绩录入到一个列表里,并求平均值(如:张三_46)
代码:
1 new =[] 2 while True: 3 content = input("请输入姓名与得分(按q键退出)") 4 if content.lower()=="q": 5 break 6 else: 7 lang = content.split("_") 8 new.append(int(lang[1])) 9 sum = 0 10 for i in new : 11 sum = sum + i 12 print(sum / len(new))