python新手 - 有人能告訴我我做錯了什麼嗎?Python-創建一個函數來獲取來自未知數量參數的唯一列表
我需要編寫一個函數,它接受未知數量的參數並返回一個唯一列表。 例如:
a= ['mary', 'james', 'john', 'john']
b= ['elsie', 'james', 'elsie', 'james']
unique_list(a,b)
['mary', 'james','john', 'elsie']
這是一些我做了一些研究之後,但在輸出是不是我所需要的代碼:
def unique_list:(*something)
result1= list(something)
result = ' '.join(sum(result1, []))
new= []
for name in result:
if name not in new:
new.append(name)
return new
>>> unique_list(a,b) ['m', 'a', 'r', 'y', ' ', 'j', 'e', 's', 'o', 'h', 'n', 'l', 'i']
這又是一個我已經厭倦了:
def unique_list(*something):
result= list(something)
new=[]
for name in result:
if name not in new:
new.append(name)
return new
>>> unique_list(a,b) [['mary', 'james', 'john', 'john'], ['elsie', 'james', 'elsie', 'james']]
另一個之一,但我得到一個錯誤信息:
def single_list(*something):
new=[]
for name in something:
if name not in new:
new.append(name)
new2= list(set(new))
return new2
>>> single_list(a,b) Traceback (most recent call last): File "", line 1, in single_list(a,b) File "", line 6, in single_list new2= list(set(new)) TypeError: unhashable type: 'list'
任何想法?預先感謝您的幫助。
@ sean-這是完美的謝謝! – JJoseph