ich habe eine Funktion geschrieben die folgendes machen soll. Sie soll mir aus meiner Hand die Elemente heraussuchen die am öftesten vorkommen und dies dann in eine Liste packen und zwar so oft wie sie vorkommen. Sind zwei verschiedene Elemente gleich oft in der Liste, so soll er die Elemente mit dem größeren Wert nehmen.
Ein Beispiel zur Verdeutlichung:
Hand = [1,2,3,3,4,4,4,4,4,13,5,5,5,5,5,13,13,]
der Return sollte sein mCard = [5,5,5,5,5]
Hier der Code der funktionieren sollte:
Code: Alles auswählen
from collections import Counter
def maxmin(Hand):
i = 0
mCard = []
Hand = Counter(Hand)
x = Counter.most_common(Hand)[0][0]
while i < Counter.most_common(Hand)[0][1]:
mCard.append(x)
i = i + 1
return mCard
Nun hab ich das Problem, dass er die '13' also immer nur die Zahl 13 ignorieren sollte und zwar solange, bis er absolut keine andere Wahl mehr hat.
Mit ignorieren meine ich, dass er all anderen Zahlen bevorzugt nehmen sollte.
Leider ist es mir nicht möglich die 13 einfach 0 zu nennen.