2016-05-24 3 views
-8
# -*- coding: utf-8 -*- 

# 8-5 목록에서 중복 원소제거 

def findUnique(list): 
    k=len(list) 
    for a in range(1, k-1): 
     i=0 
     while i<k: 
      if list[i] == list[a]: 
       del list[a]   
      else:     
       i=i+1 

    return list 
list = raw_input("목록 원소들을 입력하세요: ").split() 
findUnique(list) 
list = findUnique(list) 

print "갱신된 목록:", list 

Dies ist das Programm, das ich gemacht habe. Es hat überhaupt nicht funktioniert. bitte sagen Sie mir die Lösung.Entfernen Sie das überlappende Element in der Liste mit 'while' in Python 2.70

+2

Was Sie versuchen zu erreichen? Was ist die Frage? –

+0

ex) eingabe Listenelement: Hund Katze Hund Vogel Affe Hund Vogel, Erneuerungsliste: Hund Katze Vogel Affe so –

Antwort

0

Es gibt zwei Möglichkeiten, die eindeutigen Ergebnisse aus einer Liste zu erhalten.

  1. Der harte Weg:

    strings=raw_input("Enter a line: ").split() 
    def unique(listing): 
        check={} 
        result=[] 
        for word in listing: 
         check.setdefault(word,False) 
         if check[word]==False: 
          result.append(word) 
          check[word]=True 
        return result 
    myresult=' '.join(unique(strings)) 
    print "The result is: %s"%(myresult)
  2. Der einfache Weg

    
    strings=raw_input("Enter a line: ").split() 
    def unique(listing): 
          return list(set(listing)) 
    myresult=' '.join(unique(strings)) 
    print "The result is: %s"%(myresult)
Verwandte Themen