ここで、再帰を使用して重複する要素を削除する関数を直接記述しましたが、コードについてはあまり説明しません。
a = ["abc",["abc",1,[123,"abc"]],123]
def shanchu(list1):
#这个函数的功能是删除多层列表中的重复元素
result = []
for i in list1:
if isinstance(i,list):
shanchu(i)
else:
if i not in result:
result.append(i)
return result
print(shanchu(a))
次に、実行中の効果図を貼り付けます。
多層リスト要素関数を展開して出力します。
a = ["abc",["abc",1,[123,"abc"]],123]
def zhankai(list1):
if isinstance(list1,list):
for i in list1:
for element in zhankai(i):
yield element
else:
yield list1
print(list(zhankai(a)))
結果を展開します。