Tüm look_string öğelerinin, look_here_string listesindeki dizelerden birinde mevcut olup olmadığını belirlemeye çalışıyorum. Verimlilik nedeniyle, bir eleman yoksa, kelime listeden kaldırılır. Ben olsun çıkışBir dizenin tüm öğeleri için dizelerin bir listesini arama
1 not in dedakloera
1 not in tuau
1 in 1abcdefg
a in 1abcdefg
b in 1abcdefg
c in 1abcdefg
Bu edilir:
search_string = '1abc'
look_here_string = ['dedakloera', 'tuau', '1abcdefg']
x = 0
counter = 0
for item in search_string:
item = search_string[counter]
#print item, search_string, look_here_string[x]
if not item in look_here_string[x]:
print item, 'not in', look_here_string[x]
look_here_string.remove(look_here_string[x])
counter = 0
else:
print item, 'in', look_here_string[x]
counter +=1
Bu
aradığım çıkışı1 not in dedakloera #correct
1 not in tuau #correct
1 in 1abcdefg #correct
a in 1abcdefg #correct
komut zamanından önce durdurarak gibi görünüyor, ama yapamam Kodumda neyin yanlış olduğunu anlamaya çalışıyorum. Yardımınız için çok minnettarım! Bu yaratır
>>> search_string = '1abc'
>>> look_here_string = ['dedakloera', 'tuau', '1abcdefg']
>>> [string for string in look_here_string
if all(char in string for char in search_string)]
:
Çünkü n = len (search_string) için yinelenen search_string: 'öğesinde' 'kelimesini kullandınız, bu nedenle çıktıyı yalnızca 4 kez basıyor. – ZdaR
Bunu nasıl düzeltirim? –