スペースで区切られた数値文字列を整数リストに効果的に解析する方法
スペースで区切られた数値の文字列から整数を抽出するタスクは、最初は単純そうに見えます。ただし、堅牢な実装を実現するには、いくつかの考慮事項が発生します。
ホワイトスペースでの分割
実行可能なアプローチの 1 つは、Python の組み込みの Split() 関数を利用することです。文字列をスペースで分割することで、個々の数値を表す部分文字列のリストを取得できます。
"42 0".split() # ['42', '0']
このアプローチは、数値の間に 1 つのスペースのみを含む文字列を扱う場合にシンプルで効果的です。
整数への変換
部分文字列を整数に変換するには、map() 関数を使用できます。
map(int, ["42", "0"]) # [42, 0]
map() 関数は関数を受け取り、引数として反復可能。この場合、関数は int であり、反復可能オブジェクトの各要素を整数に変換します。 Python 2 では、map() はイテラブルを返しますが、Python 3 では遅延イテレータを返します。整数のリストを取得するには、list() を使用して結果をリストにキャストします。
list(map(int, ["42", "0"])) # [42, 0]
または、
空白だけで文字列を分割することもできます。すべての場合、特に複数の連続するスペースを扱う場合には十分ではありません。代わりに、すべての一連の数字に一致する正規表現を使用し、上記のコード スニペットを使用してこれらの一致を整数に変換することもできます。
以上がスペースで区切られた数値文字列を整数リストに解析するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。