我试图遍历一个列表,并为列表中的每个元素分配一个字母,如果有一个重复的元素,那么将字母表中的下一个字母分配给它以获得唯一的项。在
sequence = [0, 1, 2, 3, 1, 4, 2, 1]
unique_seq = [0A, 1A, 2A, 3A, 1B, 4A, 2B, 1C]
我试着生成如下字母表:
^{pr2}$然后我想像这样迭代序列:
for i in sequence:
unique_seq.append(i) for i in sequence if i not in unique_seq else...
我不知道接下来该怎么办。。。在
谢谢你
我把它做成发电机。我使用的是collections中的Counter数据结构。如果键不存在,则返回0,而不是键错误。所以我们可以用它作为alpha列表的索引。在
添加了一个函数来生成excel列样式的字母。测试了多达100万个相同数量的版本。在
输出:
^{2}$注意:Python3语法。根据需要更改打印和分区。在
这里有一个解决方案,可以处理无限大的序列和无限的重复次数(允许内存)
结果是:
^{2}$相关问题 更多 >
编程相关推荐