如何根据列表长度创建字符列表?

2024-04-27 00:07:22 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个清单:

list = [4,2,3]

我试图将它们创建为字符列表的计数器,例如,我最终得到以下结果:

list = [[A, A, A, A][B, B][C, C, C]]

我用Python怎么做呢?你知道吗

谢谢你


Tags: 列表计数器字符list
3条回答
import string
in_list = [4, 2, 3]
out_list = [[string.uppercase[i]] * j for i, j in enumerate(in_list)]
print out_list

顺便说一句,不要调用变量list,它是一个内置函数的名称。你知道吗

只是另一个解决方案:

s = [4,2,3]
>>> [ [chr(y)]*x for x,y in zip(s, range(ord('A'), ord('A') + len(s))) ]
[['A', 'A', 'A', 'A'], ['B', 'B'], ['C', 'C', 'C']]
>>>

的内容播放.py你知道吗

import string
def make_lists(a):
    characters = string.uppercase  # Relace this with your custom char set if necessary
    my_list = [[c] * n for n, c in zip(a, characters)]
    return my_list

输出:

In [11]: a = [4, 2, 3]

In [12]: play.make_lists(a)
Out[12]: [['A', 'A', 'A', 'A'], ['B', 'B'], ['C', 'C', 'C']]

相关问题 更多 >