J'ai un tuple de tuples provenant d'une requête MySQL comme ceci :
T1 = (('13', '17', '18', '21', '32'),
('07', '11', '13', '14', '28'),
('01', '05', '06', '08', '15', '16'))
Je voudrais convertir tous les éléments de la chaîne en nombres entiers et les remettre dans une liste de listes :
T2 = [[13, 17, 18, 21, 32], [7, 11, 13, 14, 28], [1, 5, 6, 8, 15, 16]]
J'ai essayé de le faire avec eval
mais je n'ai pas encore obtenu de résultat décent.
2 votes
Peut-être envisager un module d'adaptation de base de données différent ? Je sais que les modules d'adaptation PostgreSQL renverront des résultats comme votre ensemble T2.
3 votes
Duplicata possible de Analyse d'une chaîne de caractères vers une valeur flottante ou un nombre entier
0 votes
Veuillez noter que lorsque vous utilisez map, vous obtiendrez une liste d'objets map dans Python 3 et 3.5. Ceci le fait pour Python 3.5 comme mentionné ci-dessus. new_list = list(list(int(a) for a in b) for b in T1 if a.isdigit())
0 votes
Question similaire pour une liste non imbriquée : Convertir toutes les chaînes de caractères d'une liste en int.
0 votes
Bien que la plupart des réponses soient acceptées, j'aimerais ajouter une bonne référence ici : scratchcode.io/easy-ways-to-convert-string-to-int-python