En Python, je veux convertir toutes les chaînes d'une liste en entiers.
Donc si j'ai:
results = ['1', '2', '3']
Comment puis-je le faire:
results = [1, 2, 3]
Utilisez un compréhension de la liste :
results = [int(i) for i in results]
par exemple.
>>> results = ["1", "2", "3"]
>>> results = [int(i) for i in results]
>>> results
[1, 2, 3]
Un peu plus étendu que la compréhension de liste mais également utile:
def str_list_to_int_list(str_list):
n = 0
while n < len(str_list):
str_list[n] = int(str_list[n])
n += 1
return(str_list)
par exemple.
>>> results = ["1", "2", "3"]
>>> str_list_to_int_list(results)
[1, 2, 3]
Aussi:
def str_list_to_int_list(str_list):
int_list = [int(n) for n in str_list]
return int_list
Il y a différentes façons de le faire:
1) Utilisation de la carte:
def toInt(string):
return int(string)
equation = ["10", "11", "12"]
equation = map(toInt, equation)
for i in equation:
print(type(i), i)
2) Le faire sans utiliser map ()
equation = ["10", "11", "12"]
new_list = []
for i in equation:
new_list.append(int(i))
equation = new_list
print(equation)
Il y a un tas de façons de le faire ..