You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
17 lines
527 B
17 lines
527 B
7 years ago
|
import random
|
||
|
|
||
|
class Sheet(object):
|
||
|
def __init__(self, seed=None, entries=()):
|
||
|
self.seed = seed
|
||
|
self.entries = entries
|
||
|
|
||
|
@classmethod
|
||
|
def generate(cls, lowest_factor, highest_factor, total=100, seed=None):
|
||
|
entries = []
|
||
|
for f0 in range(lowest_factor, highest_factor):
|
||
|
for f1 in range(lowest_factor, highest_factor):
|
||
|
entries.append(((f0, f1), f0 * f1))
|
||
|
random.seed(seed)
|
||
|
random.shuffle(entries)
|
||
|
return cls(seed=seed, entries=entries)
|