Bonjour,

je travaille avec un tableau de joueurs suivant :

Joueur Enchère moy score forme
A 10 32
B 11 43
C 23 60
D 1 2
E 1 0
F 1 0
G 5 3
H 4 2
I 6 17
J 3 6
K 9 4
L 15 56
M 16 45

Je cherche à créer une fonction qui me renvoie les joueurs ayant la meilleure de score tout en respectant mon budget. (je définis dans ma fonction, le nombre de joueurs que je veux sélectionner et mon budget) mais j'ai une erreur :
TypeError: string indices must be integers, not 'str'
que je n'arrive pas à régler. Pourriez vous m'aider à solutionner mon problème svp ?

voici mon code :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
def mercato3(nb_joueurs, budget_poste):
 
    # Initialiser la liste des joueurs sélectionnés
    selected_joueurs = []
 
    budget_restant = budget_poste
 
    # Parcourir le tableau et ajouter les noms qui entrent dans le budget.
    for joueur in df:
         if joueur["Enchère moy"] <= budget_restant - nb_joueurs - 1 :
                selected_joueurs.append(joueur)
                budget_restant -= joueur["Enchère moy"]
                if len(selected_joueurs) == nb_joueurs:
                    break
 
    return selected_joueurs