I want to get a random value from a set. The following is my code which doesn't work.
I get the Error:
File "/usr/lib/python2.7/random.py", line 320, in sample raise ValueError("sample larger than population") ValueError: sample larger than population
I don't have any idea what this means. I want to get an integer, so I can add this integer to a set. So I have N
randomly chosen elements from one set put into another.
def getRandomBook():
bookset = getBookSet()
random_number = random.sample(bookset,1)
print random_number[0]
return_number = random_number[0]
return return_number
def getBookSet(sales_input=open("data/sales_3yr.csv", "r")):
sales = csv.reader(sales_input)
bookID = set()
lineNumber = 0
for line in sales:
id = line[6]
if lineNumber<>0:
bookID.add(eval(id))
lineNumber=1
return bookID