import uuid
def main():
number_of_runs = 5
file = 'names.txt'
runs = scramble_multiple_times(file, number_of_runs)
print_result(list(runs))
def scramble(file):
scramble_multiple_times(file, 1)
def scramble_multiple_times(file, num):
names = get_names(file)
scrambler = Scrambler(names)
for i in range(0, num):
yield scrambler.scramble()
def print_result(runs):
accents = ["-> ", " <-"]
print(runs[len(runs)-1][0] + " betalar")
pre_list = ""
if len(runs) == 1:
print()
print("Den slumpat ordnade listan:")
else:
pre_list = "#{}: " + pre_list
print("(från sista av " + str(len(runs)) + " slumpningar)")
print()
print("De slumpat ordnade listorna:")
for i in range(0,len(runs)):
runs[i][0] = accents[0] + runs[i][0] + accents[1]
print(pre_list.format(str(i+1)) + ", ".join(runs[i]))
def get_names(file):
with open(file) as f:
names = f.readlines()
names = [name.strip() for name in names]
names = list(filter(lambda name : name != "" and name[0] != "#", names))
return names
class NameIdPair:
def __init__(self, name):
self.name = name
self.uuid = uuid.uuid4()
class Scrambler:
def scramble(self):
pairs = [ NameIdPair(name) for name in self.names]
pairs = sorted(pairs, key=lambda pair: pair.uuid)
self.names = [pair.name for pair in pairs]
return self.names
def __init__(self, names):
self.names = names
main()
#
#
'''
end of program
'''
#
#
Linus
Kakis
Jesper
Nojan
Thomas
Erik
#Johan
#Jonas
#Daniel