Listedeki tüm dizeleri int'e dönüştürür

Python'da, bir listedeki tüm karakter dizilerini tam sayıya dönüştürmek istiyorum.

Eğer varsa:

results = ['1', '2', '3']

Nasıl yapacağım?

results = [1, 2, 3]
Çözüm

eşlem`](https://docs.python.org/2/library/functions.html#map) işlevini kullanın (Python 2.x'te):

results = map(int, results)

Python 3'te, map sonucunu bir listeye dönüştürmeniz gerekecektir:

results = list(map(int, results))
Yorumlar (3)

Bir list comprehension kullanın:

results = [int(i) for i in results]

Örneğin.

>>> results = ["1", "2", "3"]
>>> results = [int(i) for i in results]
>>> results
[1, 2, 3]
Yorumlar (1)

Liste anlayışından biraz daha genişletilmiş ama aynı şekilde kullanışlı:

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)

Örneğin.

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

Ayrıca:

def str_list_to_int_list(str_list):
    int_list = [int(n) for n in str_list]
    return int_list
Yorumlar (0)