803 Stimmen

Alle Zeichenketten in einer Liste in int umwandeln

Wie konvertiere ich alle Zeichenketten in einer Liste in ganze Zahlen?

['1', '2', '3']    [1, 2, 3]

5voto

2RMalinowski Punkte 337

Ein wenig umfangreicher als das Listenverständnis, aber ebenfalls nützlich:

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)

z.B..

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

Auch:

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

3voto

Boruto Uzumaki Punkte 76

Sie können dies einfach in einer Zeile tun, wenn Sie Eingaben machen.

[int(i) for i in input().split("")]

Teilen Sie es auf, wo Sie wollen.

Wenn Sie eine Liste umwandeln wollen, die keine Liste ist, setzen Sie einfach den Namen Ihrer Liste an die Stelle von input().split("") .

2voto

Code Carbonate Punkte 475

Hier ist eine einfache Lösung mit Erklärung für Ihre Frage.

 a=['1','2','3','4','5'] #The integer represented as a string in this list
 b=[] #Fresh list
 for i in a: #Declaring variable (i) as an item in the list (a).
     b.append(int(i)) #Look below for explanation
 print(b)

Hier, anhängen() wird verwendet, um Elemente (d. h. die ganzzahlige Version der Zeichenkette (i) in diesem Programm) an das Ende der Liste (b) anzufügen.

Anmerkung: int() ist eine Funktion, die dabei hilft, eine ganze Zahl in Form einer Zeichenkette wieder in ihre ganzzahlige Form umzuwandeln.

Ausgabekonsole:

[1, 2, 3, 4, 5]

Daher können wir die Zeichenketten in der Liste nur dann in eine ganze Zahl umwandeln, wenn die angegebene Zeichenkette vollständig aus Zahlen besteht, andernfalls wird ein Fehler erzeugt.

0voto

Mohsin Raza Punkte 470

Ich möchte noch hinzufügen Python | Konvertierung aller Zeichenketten in einer Liste in Ganzzahlen

Methode #1: Naive Methode

# Python3 code to demonstrate 
# converting list of strings to int 
# using naive method 

# initializing list 
test_list = ['1', '4', '3', '6', '7'] 

# Printing original list 
print ("Original list is : " + str(test_list)) 

# using naive method to 
# perform conversion 
for i in range(0, len(test_list)): 
    test_list[i] = int(test_list[i]) 

# Printing modified list 
print ("Modified list is : " + str(test_list)) 

Ausgabe:

Original list is : ['1', '4', '3', '6', '7']
Modified list is : [1, 4, 3, 6, 7]

Methode Nr. 2: Verwendung des Listenverständnisses

# Python3 code to demonstrate 
# converting list of strings to int 
# using list comprehension 

# initializing list 
test_list = ['1', '4', '3', '6', '7'] 

# Printing original list 
print ("Original list is : " + str(test_list)) 

# using list comprehension to 
# perform conversion 
test_list = [int(i) for i in test_list] 

# Printing modified list 
print ("Modified list is : " + str(test_list)) 

Ausgabe:

Original list is : ['1', '4', '3', '6', '7']
Modified list is : [1, 4, 3, 6, 7]

Methode #3 : Verwendung von map()

# Python3 code to demonstrate 
# converting list of strings to int 
# using map() 

# initializing list 
test_list = ['1', '4', '3', '6', '7'] 

# Printing original list 
print ("Original list is : " + str(test_list)) 

# using map() to 
# perform conversion 
test_list = list(map(int, test_list)) 

# Printing modified list 
print ("Modified list is : " + str(test_list)) 

Ausgabe:

Original list is : ['1', '4', '3', '6', '7']
Modified list is : [1, 4, 3, 6, 7]

0voto

Die folgenden Antworten, auch die beliebtesten, sind nicht für alle Situationen geeignet. Ich habe eine solche Lösung für super resistente Schubstr. Ich hatte so ein Ding:

AA = ['0', '0.5', '0.5', '0.1', '0.1', '0.1', '0.1']

AA = pd.DataFrame(AA, dtype=np.float64)
AA = AA.values.flatten()
AA = list(AA.flatten())
AA

[0.0, 0.5, 0.5, 0.1, 0.1, 0.1, 0.1]

Sie können lachen, aber es funktioniert.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X