Перетворити всі рядки у списку до int


Відповіді:


1171

Використовуйте mapфункцію (в Python 2.x):

results = map(int, results)

У Python 3 вам потрібно буде перетворити результат mapу список:

results = list(map(int, results))

23
Хочу зазначити, що пілінт відлякує використання map, тому будь-коли підготуйтеся до використання розумінь списку, якщо ви коли-небудь використовуватимете цей стандарт. :)
ThorSummoner

6
Зворотним є (для перетворення списку int у список рядків): map (str, results)
Ali ISSA

12
Ви можете спростити цю відповідь: просто завжди використовуйте list(map(int, results)), вона працює для будь-якої версії Python.
mvp


3

Трохи більш розширений, ніж розуміння списку, але також корисний:

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)

напр

>>> results = ["1", "2", "3"]
>>> str_list_to_int_list(results)
[1, 2, 3]

Також:

def str_list_to_int_list(str_list):
    int_list = [int(n) for n in str_list]
    return int_list
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.