0

構成ファイル内の複数値要素に関する質問への回答(これは私のニーズに正確に適合します) は、「構成から文字列をアンパックする」ことを提案しています。いくつかの場所で提案されている引数リストを解凍するためのドキュメントを読みましたが、これが私の問題にどのように関係しているかを理解できません。

これは明らかであると確信しています: string を持っているstr = "123,456"場合、それをリストに変換するにはどうすればよいですか[123,456](文字列内のコンマで区切られた要素の数は異なる場合があります)

ありがとうございました。

4

4 に答える 4

5
[int(x) for x in str.split(",")]

基本的intに、文字列の分割によって生成された各要素に関数を適用しています。

単純に の結果は にstr.split(',')なります["123","456"]

Daniel Roseman が指摘したように、例えばstr.

于 2012-06-25T15:47:06.497 に答える
4

文字列のリストまたは整数のリストが必要ですか?

文字列のリストだけが必要な場合は、非常に簡単です。

my_list = my_string.split(',')

これらを int に変換する場合は、次のものが必要です。

my_list = map(int, my_string.split(','))

str(また、組み込み関数を隠してしまうため、変数名として使用しないでくださいstr()。)

于 2012-06-25T15:47:32.920 に答える
0

最も簡単な方法は、 を使用することsplit()です。

unpacked = str.split(',')
于 2012-06-25T15:46:58.090 に答える
0

他の回答には同意しますが、想定される数値の文字列表現が無効な場合は、例外も処理する必要があります。たとえば、次のスニペットを見てください。

number_string = "123,456,x21"
delimiter = ","
number_list = []
for item in number_string.split(delimiter):
    try:
        my_num = int(item)
        number_list.append(item)
    except ValueError, e:
        # you can choose to just pass or handle the error like so
        print "Skipping %s: %s" % (item, e.message)

ちょっとした考え。幸運を!

于 2015-05-19T02:56:34.493 に答える