私は文字列が"42 0"
(例えば)であり、2つの整数の配列を取得する必要があります。スペースに.split
をすることはできますか?Pythonで文字列を整数に分割する方法は?
答えて
text = "42 0"
nums = [int(n) for n in text.split()]
l = (int(x) for x in s.split())
次の2つの整数が常に存在していることを確認している場合にも行うことができます:
a,b = (int(x) for x in s.split())
またはあなたがもちろん
l = [int(x) for x in s.split()]
後の配列を変更することを計画している場合split
を呼び出すことはできますが、整数ではなく文字列を返します。これは動作するはず
>>> x, y = "42 0".split()
>>> [int(x), int(y)]
[42, 0]
または
[int(x) for x in "42 0".split()]
を行います。
[ int(x) for x in "40 1".split(" ") ]
6の答えはOPが簡単に身に答えている可能性が質問にはほぼ十分ではありません。
import array
s = '42 0'
a = array.array('i')
for n in s.split():
a.append(int(n))
編集:より簡潔なソリューションあなたは、Pythonのarraysについて尋ねられた場合は、ここでは一つの解決策でありますinterpreter:
>>> "42 0".split() # or .split(" ")
['42', '0']
A:はい。
しかし、あなたがそれに引数を指定しない場合には、特に空白のデフォルトの分割によってsplit
方法(スペース、タブ、carriage returnとnewline)ことが指摘されていません。
>>> " \r 42\n\r \t\n \r0\n\r\n".split()
['42', '0']
あなたがint
、float
、str
などの組み込みコマンドに反復可能オブジェクトの項目を変換したい場合にも、map
を使用すると、通常はリストの内包表記を使用するよりもきれいに見え、等:
>>> map(int, "42 0".split())
[42, 0]
+1とマップを分割して渡していない –
この回答の前半は気が利いていますが、実際の質問には対応していません。 askerはint *にキャストしているときにsplit *を使用できるかどうかを知りたいと思っています。マップについての後半は、クールで便利です。 – Starman
- 1. Pythonは、複数の文字列に文字列を分割
- 2. 文字列を部分に分割する方法 - ローマ数字
- 3. Pythonで文字列を分割する
- 4. 文字列を分割する方法
- 5. python文字列分割
- 6. MSBuild 4で文字列を複数の文字で分割する方法は?
- 7. Python、文字列を分割する
- 8. Javascriptで文字列を含む部分文字列を文字列に分割する方法は?
- 9. boost :: split:文字列を文字と分割する方法は?
- 10. Pythonで文字列を分割
- 11. 文字列Pythonで別の文字列に分割
- 12. 整数配列の配列の文字列をリスト<int[]>に分割する方法は?
- 13. C#文字列を後方に分割する方法は?
- 14. 文字列をx個の文字数に分割する方法
- 15. 文字列分割関数
- 16. スペースで区切られた文字列をC++で複数の文字列に分割する方法は?
- 17. C#で文字列を分割する方法は?
- 18. JSTLで文字列を正しく分割する方法は?
- 19. この文字列を配列に分割する方法
- 20. 文字列をPostScriptの配列に分割する方法
- 21. 文字列の分割方法
- 22. クリスタルレポートで文字列を分割して整数の配列を作成する方法
- 23. 右から区切り文字で文字列を分割する方法は?
- 24. 別の文字列をスペース文字で分割する方法は?
- 25. 文字の3回ごとに文字列を分割する方法は?
- 26. Pythonで文字列を2に分割する
- 27. パターン別のPython分割文字列
- 28. 文字列内の数字から文字を分割する
- 29. Pythonのデリミタの最初のインスタンスで文字列を分割する方法
- 30. 文字列を分割してその中の整数にアクセスする
int型(nは) – Kopfgeldjaeger