I eine Liste von numerischen Werten besitzen, zum Beispiel my_list = [1,34,56,2,7,89,12,13,10,56,43,12,78,98,5,105,1,2]
und ein Satz von vordefinierten Gruppen:Python: batch Elemente einer Liste in vordefinierten Gruppen
group1 - values between 0 and 5,
group2 - values between 6 and 12,
group3 - values between 13 and 25,
group4 - values between 26 and 60,
group5 - values between 61 and inf,
Ich möchte das folgende erhalten:
{1: [1,2,1,2,5],
2: [7,12,10,12],
3: [13],
4: [34,56,56,43],
5: [89,78,98,105]}
eine Möglichkeit, es zu tun ist eine for-Schleife zu machen und überprüfen sie die if-elif-else Bedingung für jedes Element, wie unten:
for element in my_list:
if 0 <= element <= 5:
groups[1].append(element)
elif 6 <= element <= 12:
groups[2].append(element)
elif ...
Gibt es eine Möglichkeit, die Elemente der Liste zu gruppieren, die schneller und ein bisschen eleganter sind? Die reale my_list, die ich benutze, ist groß, also wäre jeder Weg zur Optimierung großartig!
Das half, danke! – Ziva