gpt4 book ai didi

python - 如何在python中重复列表中的数字?

转载 作者:行者123 更新时间:2023-12-04 12:04:47 24 4
gpt4 key购买 nike

我有一个 list

 A = [1,6,3,8,5,5,2,1,2,10]
我想重复这样的数字:
A = [1,6,6,6,6,6,6,3,3,3,8,8,8,8,8,8,8,8,..... so on] 
即1重复一次,6重复六次,3重复三次等等......
我试过:
B=np.concatenate([([x]*x) for x in A], axis=0) 
但它乘以相应的数字,我得到了这个结果:
  B = [1,36,36,36,36,36,36,9,9,9,.....so on]
当我在做:
B=np.concatenate([([x]*3) for x in A], axis=0)
这给了我:
B = [1,1,6,6,3,3,8,8... so on]
我在这里做错了什么?

最佳答案

您可以使用 numpy 执行此操作不使用 for环形。np.repeat(a, repeats)将重复输入数组 a根据 repeats它指定了每个元素的重复次数。

import numpy as np
A = [1,6,3,8,5,5,2,1,2,10]
B = np.repeat(A,A)
输出:
>>> array([ 1,  6,  6,  6,  6,  6,  6,  3,  3,  3,  8,  8,  8,  8,  8,  8,  8,
8, 5, 5, 5, 5, 5, 5, 5, 5, 5, 5, 2, 2, 1, 2, 2, 10,
10, 10, 10, 10, 10, 10, 10, 10, 10])

关于python - 如何在python中重复列表中的数字?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/68002670/

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