Auslosung mit Gruppen
Verfasst: Dienstag 12. Mai 2020, 21:04
Hat sich schon geklärt. Sobald ich weiß wie man einen Eintrag lösche werde ich das tun
Seit 2002 Diskussionen rund um die Programmiersprache Python
https://www.python-forum.de/
Hier habe ich den Code neu geschrieben habe den Fehler schon entdeckt. Aber danke trotzdem. Ich mochte diesen Code auch überahupt nichtnezzcarth hat geschrieben: ↑Dienstag 12. Mai 2020, 21:15 Wenn du die Codetags im Forum verwendest, sehen die Einrückungen auch richtig ausDein Code ist für mich leider nicht gut verständlich und wirkt zu kompliziert. Möchtest du einfach nur 16 Personen in vier 4er Teams einteilen, oder was ist das Ziel? Was hat es mit dem Leader auf sich?
Hier habe ich den Code neu geschrieben habe den Fehler schon entdeckt. Aber danke trotzdem. Ich mochte diesen Code auch überahupt nichtnezzcarth hat geschrieben: ↑Dienstag 12. Mai 2020, 21:15 Wenn du die Codetags im Forum verwendest, sehen die Einrückungen auch richtig ausDein Code ist für mich leider nicht gut verständlich und wirkt zu kompliziert. Möchtest du einfach nur 16 Personen in vier 4er Teams einteilen, oder was ist das Ziel? Was hat es mit dem Leader auf sich?
Code: Alles auswählen
import random
Group_A = 4
Group_B = 4
Group_C = 4
Group_D = 4
#Gruppen
groups = ["Group A", "Group B", "Group C", "Group D"]
Gruppe_A = []
Gruppe_B = []
Gruppe_C = []
Gruppe_D = []
#Teams
members = ["Na'Vi", "Virtus Pro", "Mousesports", "FaZe Clan", "Astralis", "Ninjas in Pyjamas",
"Team Liquid", "Fnatic", "Team Vitality", "Espada", "Ence", "Cloud 9", "G2 Esports",
"OG", "Furia", "Complexity"]
print(f"{len(members)} teams are playing!")
for i in range(int(len(members))):
leader = random.choice(members)
members.remove(leader)
#Gruppen Auswahl
gruppe = random.choice(groups)
# Gruppenfunktion
def func():
a = True
b = True
c = True
d = True
if Group_A <= 0 and a == True:
groups.remove("Group A")
a = False
else:
pass
#--------------------------------------------------------------------------
if Group_B <= 0 and b == True:
groups.remove("Group B")
b = False
else:
pass
#--------------------------------------------------------------------------
if Group_C <= 0 and c == True:
groups.remove(("Group C"))
c = False
else:
pass
#--------------------------------------------------------------------------
if Group_C <= 0 and d == True:
groups.remove(("Group D"))
d = False
else:
pass
if gruppe == "Group A":
func()
Gruppe_A.append(leader)
Group_A -= 1
elif gruppe == "Group B":
func()
Gruppe_B.append(leader)
Group_B -= 1
elif gruppe == "Group C":
func()
Gruppe_C.append(leader)
Group_C -= 1
elif gruppe == "Group D":
func()
Gruppe_D.append(leader)
Group_D -= 1
print(Gruppe_A)
print(Gruppe_B)
print(Gruppe_C)
print(Gruppe_D)
Code: Alles auswählen
#!/usr/bin/env python3
import random
TEAMS_PER_GROUP = 4
def gruppenfunktion(groups, gruppe_a, gruppe_b, gruppe_c, gruppe_d):
if len(gruppe_a) == TEAMS_PER_GROUP:
groups.remove("Group A")
if len(gruppe_b) == TEAMS_PER_GROUP:
groups.remove("Group B")
if len(gruppe_c) == TEAMS_PER_GROUP:
groups.remove("Group C")
if len(gruppe_d) == TEAMS_PER_GROUP:
groups.remove("Group D")
def main():
groups = ["Group A", "Group B", "Group C", "Group D"]
teams = [
"Astralis",
"Cloud 9",
"Complexity",
"Ence",
"Espada",
"FaZe Clan",
"Fnatic",
"Furia",
"G2 Esports",
"Mousesports",
"Na'Vi",
"Ninjas in Pyjamas",
"OG",
"Team Liquid",
"Team Vitality",
"Virtus Pro",
]
print(f"{len(teams)} teams are playing!")
gruppe_a = []
gruppe_b = []
gruppe_c = []
gruppe_d = []
while teams:
leader = teams.pop(random.randrange(len(teams)))
gruppe = random.choice(groups)
if gruppe == "Group A":
gruppenfunktion(groups, gruppe_a, gruppe_b, gruppe_c, gruppe_d)
gruppe_a.append(leader)
elif gruppe == "Group B":
gruppenfunktion(groups, gruppe_a, gruppe_b, gruppe_c, gruppe_d)
gruppe_b.append(leader)
elif gruppe == "Group C":
gruppenfunktion(groups, gruppe_a, gruppe_b, gruppe_c, gruppe_d)
gruppe_c.append(leader)
elif gruppe == "Group D":
gruppenfunktion(groups, gruppe_a, gruppe_b, gruppe_c, gruppe_d)
gruppe_d.append(leader)
else:
assert False, f"unexpexted group {gruppe!r}"
print(gruppe_a)
print(gruppe_b)
print(gruppe_c)
print(gruppe_d)
if __name__ == "__main__":
main()
Code: Alles auswählen
#!/usr/bin/env python3
import random
GROUP_COUNT = 4
def main():
teams = [
"Astralis",
"Cloud 9",
"Complexity",
"Ence",
"Espada",
"FaZe Clan",
"Fnatic",
"Furia",
"G2 Esports",
"Mousesports",
"Na'Vi",
"Ninjas in Pyjamas",
"OG",
"Team Liquid",
"Team Vitality",
"Virtus Pro",
]
print(f"{len(teams)} teams are playing!")
if len(teams) % GROUP_COUNT != 0:
print(f"Can't evenly divide {len(teams)} into {GROUP_COUNT} groups!")
return
random.shuffle(teams)
groups = [
teams[i : i + GROUP_COUNT] for i in range(0, len(teams), GROUP_COUNT)
]
for group in groups:
print(group)
if __name__ == "__main__":
main()