2016-04-14 16 views
0

Bir dize ile sözcük listesini nasıl karşılaştırabileceğimi çalışıyorum ve eşleştikleri zaman sözcük numarasını bir listeden geri bildiriyorum. Bir cümledeki kelimelerin eşsiz bir listesini kolayca alabilirim - sadece kopyaları kaldırarak ve numaralandırmayla birlikte her bir kelime için bir değer elde edebilirim, bu yüzden Mary'nin küçük bir kuzu 1'i oldu, Mary, 2, 3'ü vardı, ama Daha sonra orijinal listeyi nasıl tekrar arayacağımı ve her bir kelimeyi sayı değeriyle nasıl değiştireceğimi bilemiyorum (böylece 1 2 3 vb.).Bir listedeki bir sözcüğün değerini başka bir listenin yer değeriyle eşleştirme

Fikirler büyük ölçüde aldı!

cevap

0
my_list.index(word) 

my_list içinde kalem kelimenin dizinini döndürür. here

0

belgelerine girmeye başlayabilirsiniz. Bu bilgi için teşekkür ederiz. Bunun mantığını görebiliyorum ve işe yaramalıyım, ancak şunu elde ederim: line 27, çıkış = words.index (sonuç) ValueError: ['word1', 'word2'] listede değil. Aşağıdaki kod ile:

def remove_duplicates(words): 
    output = [] 
    seen = set() 
    for value in words: 
     # If value has not been encountered yet, 
     # ... add it to both list and set. 
     if value not in seen: 
      output.append(value) 
      seen.add(value) 
    return output 

# Remove duplicates from this list. 
sentence = input("Enter a sentence ") 
words = sentence.split(' ') 

result = remove_duplicates(words) 
print(result) 

0

burada bir yanıt bulduk :(çok karmaşık:

pozisyonları = [i + 1 i için aralığında (len (sonuç)) her biri ise == sonuç [i]]

İyi çalışıyor.

İlgili konular