[英]Get 'n' Unique random lines from a text file using python
我有一个约 1000 行的文本文件,我想从文本文件中获取唯一(不重复)的随机 15 行。
我试过这个。
from random import choice
lines = [a.strip() for a in open("FailsCollection.txt").readlines()]
result = [choice(lines) for a in range(15)]
但这不是选择唯一的行,有时同一行在 15 行 output 中重复。
从这里的答案我也试过这个
import random
from random import choice
lines = [a.strip() for a in open("FailsCollection.txt").readlines()]
result = [choice(lines) for a in random.sample(range(1, 1000), 15)]
但同样,这些线条并不是独一无二的。
任何人都可以请建议。 提前致谢。
简单一:
import random
with open("FailsCollection.txt") as f:
result = random.sample(list(f), 15)
使用random.sample
试试这个代码:
from random import sample
n=15
indexes = random.sample(range(0,1000),n)
file = open("FailsCollection.txt").readlines()
lines = []
for i in indexes:
lines.append(file[i].strip())
print(lines)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.