【发布时间】:2013-07-17 15:57:59
【问题描述】:
我是 Python 新手,不知道为什么有时会出现此错误。
这是代码:
import random
sorteio = []
urna = open("urna.txt")
y = 1
while y <= 50:
sort = int(random.random() * 392)
print sort
while sort > 0:
x = urna.readline()
sort = sort - 1
print x
sorteio = sorteio + [int(x)]
y = y + 1
print sorteio
urna.txt 是这种格式的文件:
1156
459
277
166
638
885
482
879
33
559
如果有人知道为什么会出现此错误以及如何修复它,我将不胜感激。
【问题讨论】:
-
您的目标是读取文本文件并仅对值的随机部分进行排序吗?你知道你只存储你读出的最后一个值吗?
-
是的,但我坚持认为“sorteio = sorteio + [int(x)]”将所有值存储在一个列表中......我该如何存储所有值?
-
您能告诉我
while <= 50的意义何在吗?您能否发布您的预期输出,这将有助于解决您的问题 -
我必须随机选择 50 个数字 urna.txt 文件(每个代表 db 中的一个 id)并将它们存储在一个列表中,然后检索每个 id 的数据并打印它们
-
我想我刚刚发现了另一个问题:随机搜索必须每次都在整个文件中,但我编写下一个循环的方式将在文件的较小部分,对吗?
标签: python python-2.7