给定合法数据集(1,3,5,7,9},任意输入一列表,如[3,4,7,2,5,6,2,7,9,4],将列表中的非法数据(不在合法数据集中的元素)全部删除。编写程序完成该问题,程序运行要求如下:
输入一列表:[3,4,7,2,5,6,2,7,9,4]
删除后列表:[3,7,5,7,9]
set1 = {1,3,5,7,9}
ls = eval(input('输入一列表:')) # [3,4,7,2,5,6,2,7,9,4]
list1 = [] #list是内置函数,命名的时候建议不要用这个命名
for i in ls:
if i not in set1:
continue # break是退出循环,continue是跳出当前循环
else:
list1.append(i)
print('删除后的列表:{}'.format(list1))
将break改成continue应该就可以了。break完全跳出了该循环,而continue是停止当前循环并继续下一次循环。
a={1,3,5,7,9}
b=[3,4,7,2,5,6,2,7,9,4]
c=[x for x in b if x in a]
print(c)
python反转列表的三种方式 : https://www.cnblogs.com/hokky/p/8425997.html
在python列表中查找某个元素的索引:https://blog.csdn.net/u012308586/article/details/104960447/
#反转列表 [0,1,2,3,4,5,6,7] 后给出中元素 5 的索引号
li=[0,1,2,3,4,5,6,7]
a = list(reversed(li))
print(a.index(5))