[英]shorter way to merge, shuffle and take first n elements of a list
我正在這樣做(請參閱代碼),並且我認為會有更短的方法
fd_list = list(set(fd_list1 + fd_list2 + fd_list3))
shuffle(fd_list)
fd_list = fd_list[:10]
我想做的是:連接三個列表,將它們洗牌並取前10個元素。 Alternativ我可以合並三個列表,並隨機取10個元素? 我不知道 順便說一下,結果列表必須是唯一的。
編輯*:示例list1 = [ 1, 2, 3, 6], list2 = [], list3 = [4, 5, 6, 6, 7, 8, ,8]
結果可能看起來像這樣...
result = [3, 4, 5, 1 ,8 ,2 ,7 ,6]
我認為“樣本”解決方案將是最好的。 非常感謝!
random.sample(set(fd_list1 + fd_list2 + fd_list3), 10)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.