为了账号安全,请及时绑定邮箱和手机立即绑定

如何创建没有重复的随机数列表?

如何创建没有重复的随机数列表?

翻过高山走不出你 2019-07-30 16:15:57
如何创建没有重复的随机数列表?我试过用random.randint(0, 100),但有些数字是一样的。是否有方法/模块来创建列表唯一的随机数?def getScores():     # open files to read and write     f1 = open("page.txt", "r");     p1 = open("pgRes.txt", "a");     gScores = [];     bScores = [];     yScores = [];     # run 50 tests of 40 random queries to implement "bootstrapping" method      for i in range(50):         # get 40 random queries from the 50         lines = random.sample(f1.readlines(), 40);
查看完整描述

3 回答

?
MYYA

TA贡献1868条经验 获得超4个赞

这将返回从0到99范围内选择的10个数字的列表,没有重复。

import random
random.sample(range(100), 10)

参考您的特定代码示例,您可能希望从文件中读取所有行一次,然后从内存中保存的列表中选择随机行。例如:

all_lines = f1.readlines()for i in range(50):
    lines = random.sample(all_lines, 40)

这样,您只需要在循环之前实际读取一次文件。这样做要比回寻文件的开头并f1.readlines()为每次循环迭代再次调用要高效得多。


查看完整回答
反对 回复 2019-07-30
  • 3 回答
  • 0 关注
  • 418 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信