我想要这里生成一个list, 这个list在transposition=1的时候,我会随机得到一个list, 然后所有数字都出现至少一次。

我想要这里生成一个list, 这个list在transposition=1的时候,我会随机得到一个list, 然后所有数字都出现至少一次。

问题描述:

问题遇到的现象和发生背景

我想要这里生成一个list, 这个list在transposition=1的时候,我会随机得到一个list, 然后所有数字都出现至少一次。

问题相关代码,请勿粘贴截图
import random
from random import choice
transpositions=[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11]
transposition=random.choices(transpositions, k=10)
pitch_class=[1, 4, 5, 7]
def newset(pitch_class, transposition):
    picked = set()
    while set(pitch_class) != picked:
        picked.add(x := choice(pitch_class))
        yield x + transposition
  new_set=[*newset(pitch_class, transposition)]
###### 运行结果及报错内容 
我的这个code, 出现了报错, 我知道问题是因为new_set=[*newset(pitch_class, transposition)]这里transiposition 不支持LIST
###### 我的解答思路和尝试过的方法 

###### 我想要达到的结果
我希望transposition会运行10次, 然后10个list会加入到一个新的list里



yield x + transposition ====》》yield [x] + transposition