Python-值出现x次后列表中的剩余值
到目前为止,我已经:Python-值出现x次后列表中的剩余值,python,list,loops,Python,List,Loops,到目前为止,我已经: list = [0,0,1,1,0,1,0,1,0] score = 1 for i in list: while score < 4: if i == 0: list.pop(0) score = score +1 print(list) list=[0,0,1,1,0,1,0,1,0] 分数=1 对于列表中的i: 得分
list = [0,0,1,1,0,1,0,1,0]
score = 1
for i in list:
while score < 4:
if i == 0:
list.pop(0)
score = score +1
print(list)
list=[0,0,1,1,0,1,0,1,0]
分数=1
对于列表中的i:
得分<4分时:
如果i==0:
list.pop(0)
分数=分数+1
打印(列表)
我想打印第4个0之后的剩余列表。列表是动态的,由用户更改。您可以简单地实现这一点,而无需任何第二个循环,首先编写一个函数来查找正确的索引并获取剩余部分
def find_index(element, encounter, list):
for i, v in enumerate(list):
if v == element:
encounter -= 1
if encounter == 0:
return i
list = [0,0,1,1,0,1,0,1,0]
list[find_index(0, 4, list):]
# >>> [0, 1, 0]
list[find_index(0, 4, list)+1:]
# >>> [1, 0]
您可以简单地实现这一点,而不需要任何第二个循环,首先编写一个函数来查找正确的索引并获取剩余部分
def find_index(element, encounter, list):
for i, v in enumerate(list):
if v == element:
encounter -= 1
if encounter == 0:
return i
list = [0,0,1,1,0,1,0,1,0]
list[find_index(0, 4, list):]
# >>> [0, 1, 0]
list[find_index(0, 4, list)+1:]
# >>> [1, 0]