我从源列表创建一个随机列表,问题是它有一个项目重复两次。我想在我的名单中没有重复。这是我的代码和输出。从列表中的随机列表没有重复
COLOR_INDEX = ['FF000000', 'FFFF0000', 'FF00FF00', 'FF0000FF',
'FFFFFF00', 'FFFF00FF', 'FF00FFFF', 'FF800000', 'FF008000', 'FF000080',
'FF808000', 'FF800080', 'FF008080', 'FFC0C0C0', 'FF808080', 'FF9999FF',
'FF993366', 'FFCCFFFF', 'FF660066', 'FFFF8080', 'FF0066CC',
'FFCCCCFF', 'FF000080', 'FFFF00FF', 'FFFFFF00', 'FF00FFFF', 'FF800080',
'FF800000', 'FF008080', 'FF0000FF', 'FF00CCFF', 'FFCCFFFF', 'FFCCFFCC',
'FFFFFF99', 'FF99CCFF', 'FFFF99CC', 'FFCC99FF', 'FFFFCC99', 'FF3366FF',
'FF33CCCC', 'FF99CC00', 'FFFFCC00', 'FFFF9900', 'FFFF6600', 'FF666699',
'FF969696', 'FF003366', 'FF339966', 'FF003300', 'FF333300', 'FF993300',
'FF993366', 'FF333399', 'FF333333']
#import random function
import random
#create a random list of 29 colors .
color_lst= random.sample(COLOR_INDEX, 29)
print color_lst
这里是结果:
['FF993366', 'FF333300', 'FFCCFFFF', 'FFCC99FF', 'FF993366', 'FFFF6600', 'FF339966', 'FF003366', 'FF000080', 'FF0000FF', 'FFFF00FF', 'FFFFFF99', 'FF800080', 'FF00CCFF', 'FF808080', 'FFFFCC99', 'FF333333', 'FF333399', 'FF99CC00', 'FFCCFFCC', 'FFFF99CC', 'FFFF9900', 'FF660066', 'FF008000', 'FFFF8080', 'FF99CCFF', 'FFFFCC00', 'FF003300', 'FF800000']
我想创建一个具有特定镜头(通常在25左右)的列表,其中有54个项目,没有重复。 –
你想要从整个列表还是从列表中抽取样本?这些可以产生不同的分布。如果你想从整个列表中抽样,使用'... = list(set(random.sample(...)))'。但是如果你只想从唯一身份证明中抽样,你应该做'... = random.sample(set(...))'。 – senshin
看看那个http://stackoverflow.com/questions/13998901/generating-a-random-hex-color-in-python – mrvol