如何在 Python 上使用地图和设置

How to use map and set on Python

有没有办法让它更干净一点? 在执行操作后,我必须继续将所有内容转换为列表,这行代码让我很困扰。我对编程有点陌生,希望有一些更像样的东西。这个解决方案对我有用,但是有点难看。

exclusion_new = ["Abs", "acd", "bde", "Abs", "Kji"]  #example list
x = list(set(list(map(lambda x: x.lower(), exclusion_new))))
print(x)
result: ["abs", "acd", "bde", "kji"]

您可以删除 list() 的一个电话:

exclusion_new = ["Abs", "acd", "bde", "Abs", "Kji"]  #example list
x = list(set(map(lambda x: x.lower(), exclusion_new)))

此外,在这种情况下,将 map-functionlambda 结合使用 overkill .

您应该改用简单的列表理解

exclusion_new = ["Abs", "acd", "bde", "Abs", "Kji"]  #example list
x = set([x.lower() for x in exclusion_new])

或者集合理解:

exclusion_new = ["Abs", "acd", "bde", "Abs", "Kji"]  #example list
x = [*{x.lower() for x in exclusion_new}]

您可以使用解包列表并将 str.lower 传递给地图函数使其更简洁:

 x = [*{*map(str.lower, exclusion_new)}]