【发布时间】:2019-12-23 05:35:09
【问题描述】:
我有这份清单
names = [ ["cat", 9112, "dog123", 5625], ["luck", 1232, "bad23"] ]
根据this question 我已经通过使用此代码完成了它
names = [ ["cat", 9112, "dog123", 5625], ["luck", 1232, "bad23"] ]
new = [[x for x in y if isinstance(x, int)] for y in names]
输出 -: [[9112, 5625], [1232]]
问题
现在我想删除这样的重复数字。
expected output -: [[912, 562], [123]]
我正在使用此代码,但它不起作用
m = sorted(list(set(new)))
print(m)
错误 -:
Traceback (most recent call last):
File "main.py", line 13, in <module>
m = sorted(list(set(new)))
TypeError: unhashable type: 'list'
注意-:我只想保留最初的原始数字。(例如-:1232需要变成123而不是132)
【问题讨论】:
-
一旦你弄清楚了,你需要做的就是
remove_dups(x) for x in y if instance(x, int)
标签: python python-3.x list