小码问答,有问必答!

2021-01-23 15:37

求算法:假设文件夹中有100个文件,随机返回其中2个文件,日期越新的选中概率越大

2021-01-23 15:37 回答了这个问题

count = 2
demodata = [(f"第{i}个数据",i) for i in range(100)]
result = []
demodata = sorted(demodata,key=lambda x:x[1],reverse=True)
demodata = random.sample(demodata[0:count*2+random.randint(0,len(demodata)-count*2)],k=count)

print(demodata)

假设100个数据,i代表数据的时间,先按照时间逆序排序,再从这个序列中从0开始随机取一个长度缩小的新序列,但是一定大于2,然后从这个序列中随机选取2个不同的元素。


使用了random模块中的sample方法

0条评论

我要评论