J'ai un code qui retourne un dictionnaire avec les noms comme les clés et les valeurs correspondantes qui sont des tuples de nombres. Le premier nombre après le nom contrôle combien de nombres sont dans le tuple correspondant (les nombres inclus dans le tuple sont pris de gauche à droite). Par exemple, la ligne de texte "Ali 6 7 6 5 12 31 61 9"
a 6 comme premier chiffre après le nom et cette ligne de texte devient l'entrée du dictionnaire avec le mot-clé "Ali" et la valeur correspondante est un tuple composé des six entiers suivants "Ali ": (7, 6, 5, 12, 31, 61).Tuple à dictionnaire en python en utilisant le fichier texte
C'est le film que je prends le code de
Bella 5 2 6 2 2 30 4 8 9 2
Gill 2 9 7 54 67
Jin 3 26 51 3 344 23
Elmo 4 3 8 6 8
Ali 6 7 6 5 12 31 61 9
la sortie attendue est
Ali : (7, 6, 5, 12, 31, 61)
Bella : (2, 6, 2, 2, 30)
Elmo : (3, 8, 6, 8)
Gill : (9, 7)
Jin : (26, 51, 3)
donc je l'ai fait comme ça
def get_names_num_tuple_dict(filename):
file_in = open(filename, 'r')
contents = file_in.read()
file_in.close()
emty_dict = {}
for line in contents:
data = line.strip().split()
key = data[0]
length = int(data[1])
data = tuple(data[2:length + 2])
emty_dict[key] = data
return emty_dict
Mais je m ayant cette erreur length = int (data [1]) IndexError: indice de liste hors plage
Quelqu'un peut-il aider s'il vous plaît? Ce sera vraiment utile. Je suis un peu faible avec le dictionnaire en tant qu'apprentissage pour la première fois.
Avez-vous même essayé d'utiliser le débogueur? –
N'a pas appris à propos de cette fonction .... où est-ce dans le programme python? – dipte