【发布时间】:2013-09-10 11:31:30
【问题描述】:
我正在做我的第一个 OOP 项目,它是一个随机数生成器,可以生成给定范围内的多个随机数:
import random
import math
resList=[]
class randomInRange:
def getRandom(self, start, end, quantity):
for i in range(quantity):
selList = range(start, end)
resNum = random.choice(selList)
resList.append(resNum)
return (resList)
RR=randomInRange()
然后,我会在 Python Shell 中输入:
(RR.getRandom(0,10,10))
它会给出这样的结果:[2, 2, 1, 4, 8, 1, 0, 7, 4, 5] 但是如果我再次调用该函数,它将附加新生成的 号码到同一个列表。所以它会是这样的: [2, 2, 1, 4, 8, 1, 0, 7, 4, 5, 4, 5, 3, 1, 8, 6, 7, 5, 4, 4]
我该如何解决这个问题?如何防止新数据一遍又一遍地附加到同一个列表中,这使得列表无用?
提前致谢!
【问题讨论】:
-
使其成为一个集合 - 值必须是唯一的。或者在插入之前检查值是否出现。
-
我有点需要了解集合 :/ 我刚开始使用 python :) 谢谢你的帮助 :)
-
@duffymo 这不是问题:p
-
@user2754106 在official python docs 上有一个很好的教程:)
-
@ Haidro 感谢您的提醒! :) 会尽快检查出来 :)
标签: python list class oop append