部分文字列と一致する要素をリストから削除するにはどうすればよいですか?
pop()
andメソッドを使用してリストから要素を削除しようとしましたが、enumerate
削除する必要のある連続した項目がいくつか欠落しているようです。
sents = ['@$\tthis sentences needs to be removed', 'this doesnt',
'@$\tthis sentences also needs to be removed',
'@$\tthis sentences must be removed', 'this shouldnt',
'# this needs to be removed', 'this isnt',
'# this must', 'this musnt']
for i, j in enumerate(sents):
if j[0:3] == "@$\t":
sents.pop(i)
continue
if j[0] == "#":
sents.pop(i)
for i in sents:
print i
出力:
this doesnt
@$ this sentences must be removed
this shouldnt
this isnt
#this should
this musnt
必要な出力:
this doesnt
this shouldnt
this isnt
this musnt