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
>>> ユニークリスト(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
>>> ユニークリスト(a,b) [['メアリー', 'ジェームズ', 'ジョン', 'ジョン'], ['エルシー', 'ジェームズ', 'エルシー', 'ジェームズ']]
別のものですが、エラーメッセージが表示されました:
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) トレースバック (最新の呼び出しが最後): ファイル ""、1 行目、 single_list(a,b) ファイル ""、6 行目、single_list 内 new2= list(set(new)) TypeError: ハッシュできないタイプ: 'list'
何か案は?よろしくお願いいたします。