1. ホーム
  2. python

[解決済み] Pythonで文字列を分割してパースするにはどうしたらいいですか?

2022-03-03 04:44:44

質問

Pythonでこの文字列を分割しようとしています。 2.7.0_bf4fda703454

この文字列をアンダースコアで分割したい。 _ 左側の値を使えるように。

どのように解決するのですか?

"2.7.0_bf4fda703454".split("_") は文字列のリストを与える。

In [1]: "2.7.0_bf4fda703454".split("_")
Out[1]: ['2.7.0', 'bf4fda703454']

で文字列を分割しています。 すべての のアンダースコアになります。最初の分割で停止させたい場合は "2.7.0_bf4fda703454".split("_", 1) .

文字列にアンダースコアが含まれていることが分かっている場合、LHSとRHSを別々の変数に展開することもできます。

In [8]: lhs, rhs = "2.7.0_bf4fda703454".split("_", 1)

In [9]: lhs
Out[9]: '2.7.0'

In [10]: rhs
Out[10]: 'bf4fda703454'

別の方法として partition() . 使い方は前回の例と同様ですが、2つの成分の代わりに3つの成分を返します。主な利点は、このメソッドは文字列に区切り文字が含まれていなくても失敗しないことです。