我想删除包含此元素的列表中元素'//'之后的列表元素
my_list = ['a', '=', 'x+y', '//', 'moo']
if '//' in my_list:
my_list = my_list[0:my_list.index('//')]
print my_list
通缉输出:
['a', '=', 'x+y']
为什么这不起作用?
答案 0 :(得分:1)
答案:
for index,line in enumerate(input):
if '//' in line:
input[index] = line[0:line.index('//')]
答案 1 :(得分:0)
它不起作用的唯一原因是因为你在下面显示的行中使用了“mylist”,你没有定义它我想它应该是“my_list”并且会起作用:
my_list = my_list[0:mylist.index('//')]
答案 2 :(得分:0)
要从i切换到j,您需要[i:j+1]
:
>>> def split(my_list):
... if '//' in my_list:
... return my_list[0:my_list.index('//')+1]
... else:
... return my_list
...
>>> split(my_list)
['a', '=', 'x+y', '//']