day 5 笔记
列表 补充:
1.索引为奇数值时候,删除
# 删除列表元素时,会影响列表长度,从而使得索引取值时,容易出现错误。
解法一:利用倒叙,让正在运行的列表不受元素数量减少的影响
li = [11,22,33,44,55,66,77,88,99] for i in range(len(li)-1,-1,-1) : if i%2 == 1: del li[i] print(li)
解法二:创建一个新的列表然后将索引为偶数的值添加到新列表,再打印出新列表
v = [] li = [11,22,33,44,55,66,77,88,99] for i in range(0,len(li)) : if i%2 == 0: v.append(li[i]) li = v print(li)
2. 切片+步长
li = [11, 22, 33, 44, 66] del li[0:4] del li[0:4:2] print(li)
tuple 补充:
只有一个元素的时候一定要加逗号。
v = (1) print(v ,type(v)) #输出结果 1 <class 'int'>
v = (1,) print(v ,type(v)) #输出结果(1,) <class 'tuple'>
dict 补充:
# 易出错点:
题:dic = {'k1':"v1",'k2':'v2'}把key="k1",键值对删除
del dic['k1']
题:dic = {'u1':"v1",'k2':'v2','k3':'v3'}把key中存在k,键值对删除
dic = {'u1':"v1",'k2':'v2','k3':'v3'}
# 不要在循环当前字典的过程中,修改当前字典大小
# 错误
for key in dic:
if 'k' in key:
del dic[key]
#正确的解法
lis = [] dic = {'u1':"v1",'k2':'v2','k3':'v3'} for i in dic: if "k" in i: #先将存在K的 key放入一个新建的列表里,防止在字典循环时候去修改而报错。 lis.append(i) for v in lis: #将列表的元素列出去,去字典删除对应的key del dic[v] print(dic)
bool。补充
——False : 0 None "" [] {} ()
# 学会用 变量 True False 进行循环的停止,
用户输入的内容如果包括 li 里面的敏感词汇 就要重新输入:
li = ['夏季',"冬季"] while True: v = False content = input("<<<<<") for i in li: if i in content: print("...") v = True break #如果 用户输入的content 不包含i,则不会运行上面的if判断。 if v == False: break print(content)

浙公网安备 33010602011771号