Wie spalte ich einen String in Ganzzahlen in Python?

Ich habe einen String "42 0" (zum Beispiel) und muss ein Array der beiden ganzen Zahlen bekommen. Kann ich ein .split auf einem raum machen?

6 Solutions collect form web for “Wie spalte ich einen String in Ganzzahlen in Python?”

6 Antworten ist nicht annähernd genug für eine Frage, die OP sich leicht durch das Testen im Dolmetscher beantworten konnte:

 >>> "42 0".split() # or .split(" ") ['42', '0'] 

A: Ja.

Aber es wurde nicht ausdrücklich darauf hingewiesen, dass die split Methode standardmäßig auf Whitespace (Raum, Tab, Wagenrücklauf und Newline ) aufgeteilt wird, wenn man ihm kein Argument gibt.

 >>> " \r 42\n\r \t\n \r0\n\r\n".split() ['42', '0'] 

Auch die Verwendung von map sieht in der Regel sauberer als mit Listenverständnis, wenn Sie die Elemente von iterables in Einbauten wie int , float , str , etc konvertieren möchten:

 >>> map(int, "42 0".split()) [42, 0] 
 text = "42 0" nums = [int(n) for n in text.split()] 
 l = (int(x) for x in s.split()) 

Wenn Sie sicher sind, dass es immer zwei ganze Zahlen gibt, können Sie auch:

 a,b = (int(x) for x in s.split()) 

Oder wenn Sie planen, das Array nach zu ändern

 l = [int(x) for x in s.split()] 

Das sollte funktionieren:

 [ int(x) for x in "40 1".split(" ") ] 

Natürlich kannst du split nennen, aber es wird Strings zurückgeben, nicht ganze Zahlen. Machen

 >>> x, y = "42 0".split() >>> [int(x), int(y)] [42, 0] 

oder

 [int(x) for x in "42 0".split()] 

Andere Antworten zeigen bereits, dass du Split () verwenden kannst, um die Werte in eine Liste zu bringen . Wenn du nach Pythons Arrays fragst , hier ist eine Lösung:

 import array s = '42 0' a = array.array('i') for n in s.split(): a.append(int(n)) 

Bearbeiten: Eine prägnantere Lösung:

 import array s = '42 0' a = array.array('i', (int(t) for t in s.split())) 
  • String Manipulation in Python
  • Hex in Binär umwandeln
  • Lesen von docx-Dateien, Erkennen und Speichern von kursiv geschriebenen Texten
  • Pandas DataFrame gespeicherte Liste als String: Wie konvertiert man wieder in die Liste?
  • Python-Split-String in mehrere Zeichenfolge
  • Wie finde ich chinesischen oder japanischen Charakter in einer String in Python?
  • Wie bekomme ich die datetime aus einem String mit '2nd' für das Datum in Python?
  • Python, der unbekannte Zeichenfolge durch Leerzeichen und Klammern aufspaltet
  • Python regulärer Ausdruck ersetzt einen Teil einer übereinstimmenden Zeichenfolge
  • Tokenize eine Zeichenfolge, die Trennzeichen in Python hält
  • Lesen eines os.popen (Befehl) in einen String
  • Python ist die beste Programmiersprache der Welt.