回答此问题可获得 20 贡献值,回答如果被采纳可获得 50 分。
<p>我试图从一个列表字典中随机选择一个特定数量的序列,然后将这些序列附加到一个新的列表中,但是我一直收到一个空列表。我的代码:</p>
<pre><code>final_List = []
num = [["ENST", "10", "5"], ["ENGT", "8", "2"], ["ENHT", "5", "1"]]
a = {"ENST" : ['acac', 'tgtgtgt', 'hahah'], "ENHT": ['aaaa', 'tttt', 'gig',
'cccc'], 'ENGT' : ['ddd', 'eeee', 'ffff', 'hhhh', 'pppp']}
for line in num:
for k, v in a.items():
if line[0] == k:
for i in int(line[1] -1):
final_List.append([k, random.choice(0, len(v))])
</code></pre>
<p>我将[0]行与k行进行比较,如果它们相同,我想从v中提取随机序列。我想要的序列数是[1]行的数字。最终的清单如下所示:</p>
<pre><code>final_List = [["ENST", "acac"], ["ENST", tgtgtgt"]...10 lists with header "ENST"
["ENGT", "ddd"], .....8 lists with header "ENGT"
["ENHT","aaaa"], ..... 5 lists with header "ENHT"
</code></pre>