gpt4 book ai didi

python - 将列表中的每个元素重复任意次

转载 作者:行者123 更新时间:2023-11-28 21:44:39 25 4
gpt4 key购买 nike

我想知道如何多次复制列表中的每个元素,例如

l = ['a', 'b', 'c']

l 中的重复元素产生一个新列表,

n = ['a', 'a', 'a', 'a', 'b', 'b', 'c', 'c', 'c']

所以 'a' 被复制了 3 次,'b' 一次,'c' 两次。每个元素的重复次数由 numpy.random.poisson 决定,例如numpy.random.poisson(2)

最佳答案

这是一个基于 NumPy 的矢量化方法,使用 np.repeat创建一个数组 -

np.repeat(l, np.random.poisson([2]*len(l)))

如果您需要一个列表作为输出,请附加 .tolist()那里-

np.repeat(l, np.random.poisson([2]*len(l))).tolist()

如果您想为每个元素至少保留一个条目,请使用 np.random.poisson([2]*len(arr)).clip(min=1) 添加一个剪辑.

关于python - 将列表中的每个元素重复任意次,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40421249/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com