如何将单词分配给列表中的值?

Matthi9000

我有一个包含4个不同数字的列表,总共10个数字。我想为每个数字分配一个颜色/文字。因此,问题是,如何从数字列表转到颜色列表,其中每个相同的数字都由相同的颜色/单词表示?

初始清单:

my_list = [72, 50, 3, 50, 16, 72, 3, 72, 3, 50]

预期产量:

print(my_list) -> ['red', 'blue', 'green', 'blue', 'black', 'red', 'green', 'red', 'green', 'blue']

我尝试了什么?

我从my_list中提取了唯一的数字:

my_list = [72,50,3,50,72,3,72,3,50]

UniqueList = list(set(my_list))
print(UniqueList)

现在,我需要从颜色列表中为这4个唯一数字中的每一个分配颜色['红色','蓝色','绿色','黑色','黄色','紫色'],然后使用颜色。不幸的是,我不知道如何前进。有任何想法吗?

丹妮·梅塞乔(Dani Mesejo)

您可以创建一个查找字典:

my_list = [72, 50, 3, 50, 16, 72, 3, 72, 3, 50]
colors = ['red', 'blue', 'green', 'black', 'yellow', 'purple']

lookup = dict(zip(set(my_list), colors))
output = [lookup[number] for number in my_list]
print(output)

输出量

['red', 'green', 'black', 'green', 'blue', 'red', 'black', 'red', 'black', 'green']

您可以将lookup字典视为将颜色分配给数字之一的函数。在上面的示例中,查找具有以下值:

{72: 'red', 16: 'blue', 50: 'green', 3: 'black'}

这意味着它将在'red'每次72出现时分配您可以lookup像这样自定义

lookup = {72 : 'green', 50 : 'black', 3 : 'yellow', 16: 'purple'}

这次每次72出现green都会被分配。此处了解有关如何创建字典的更多信息

更新资料

如果要保留列表中的出现顺序,可以执行以下操作:

seen = set()
result = []
for e in my_list:
    if e not in seen:
        result.append(e)
        seen.add(e)

print(result)

输出量

[72, 50, 3, 16]

请注意,该列表result按出现顺序排列。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何将值列表分配给列表的元素

如何将列表列表中的值分配给键以在python中创建字典

如何将列表中的值、用户输入的代码中的值分配给变量

如何将列表中的值分配给数据框中的一组值?

如何将列表中的项目分配给变量

如何将列表中的对象分配给变量?

如何将AppleScript脚本的返回列表中的值分配给Automator中的变量?

如何将列表中的随机值分配给pandas数据框中的列?

如何将python函数分配给HTML下拉列表中的值属性

如何将新值从lapply分配给列表中数据框的新列

如何将值分配给乌龟 onclick 函数中的列表

如何将一个字符串附加到单词列表中的每个单词并将新单词列表分配给变量?

如何将子列表的分数分配给单词并创建新词典

如何将单词分配给数据框中的数字

在批处理文件中,如何将一串值分配给变量列表?

如何将ArrayList分配给列表?

如何将列表元素名称分配给sheetName

Xamarin表单:如何将列表分配给ListView

如何将输入分配给现有列表?

如何将列表的每个变化值分配给同一词典的不同键?

如何将批量参数分配给 Django 对象值列表?

如何将值分配给reflect Field()?

如何将angularjs值分配给jquery

如何将CTE值分配给变量

如何将类的对象分配给值

如何将值分配给函数调用的结果?

如何将值分配给指针?

如何将OnActivityResult值分配给Listview?

如何将char的值分配给char的整数?