我想拉出列表元素数量随机范围(从5到15)。 例如, 我有包含以下字符串的文本
locasari2
jyprin
a0007a
hdki22
binarykorea
onlineforum
vobank1
chsb4322
gaiber62
wjun2104
inaekkim
zcbm22
happy_sex
ckdgns0524
lhe0925
chong4787
multy26
ver_test
danaecco
paoo
kea2209
ybyng234
smrush
kimksh2596
winproto
cs8489
aek5262
bktan12
puripink04
qkdlfjf99
nyj4154
joara5778
keepro
sswpsh72
tom770303
ckdanrl0757
himart26
lco3924
heloword
jking15
我想从5到15随机抽取一个元素列表,所以我想得到的结果是什么 是
^{pr2}$这是我一直做的,但问题之一是有时可以正确提取金额元素,但有时过度提取数据超过15个字
out = ''
handle = open('fx -01.txt').read()
for i, line in enumerate(handle.split('\n')):
out += line + ','
rndind = random.randint(5,15)
if (i + 1) % rndind == 0 :
out = out.split(',')
print len(out)
print out
out = ''
对不起,我的英语不好。在
使用^{} ,您不需要读取整个文件。在
您需要使用上下文管理器。在
为了循环使用,假设您处理的是一个小的结果列表(尽管文件可能很大),并且选择列表的内存不是问题,我们将首先收集列表中的项目,然后在列表中随机选择项目。在
上下文管理器确保在出现错误时自动关闭文件,这样就不会使文件处于锁定状态。在
open
为您提供了一个迭代器,而mode标志中的U
(对于Universal)可确保您在换行符上进行拆分,而不管您的平台、Windows或Unix如何。在然后我们避免将整个文件甚至迭代器具体化到内存中的一个列表中,只选择要从中随机选择的列表。演示正在循环10次。每个选择都将独立于前一个选项,这意味着每个选项可以选择多次。在
要让它们都处于随机位置,也就是说,在适当的位置随机洗牌:
^{pr2}$会给你一个随机排列的列表。在
相关问题 更多 >
编程相关推荐