3 回答

TA貢獻1871條經(jīng)驗 獲得超13個贊
可以使用內(nèi)置功能對列表進行排序和重復(fù)數(shù)據(jù)刪除:
myList = sorted(set(myList))
set 是Python> = 2.3的內(nèi)置函數(shù)
sorted 是Python> = 2.4的內(nèi)置函數(shù)

TA貢獻1816條經(jīng)驗 獲得超4個贊
如果要保持原始列表的順序,只需使用OrderedDict與None作為值。
在Python2中:
from collections import OrderedDict
from itertools import izip, repeat
unique_list = list(OrderedDict(izip(my_list, repeat(None))))
在Python3中,它甚至更簡單:
from collections import OrderedDict
from itertools import repeat
unique_list = list(OrderedDict(zip(my_list, repeat(None))))
如果您不喜歡迭代器(壓縮和重復(fù)),則可以使用生成器(在2和3中均可使用):
from collections import OrderedDict
unique_list = list(OrderedDict((element, None) for element in my_list))
添加回答
舉報