0

リストのリストがあります。サブリストにはそれぞれ 3 つの文字列が含まれます。

bins = [['1', '2', '3.5'], ['4', '5', '6.0']]

これを、各サブリストが 2 つの整数と浮動小数で構成されるリストのリストに変換する必要があります。私は次の行に沿ってリスト内包表記を考えていました:

[ [int(start), int(stop), float(value)] for bn in bins for [start, stop, value] in bn]
4

2 に答える 2

4

あなたは近いです:

[[int(start), int(stop), float(value)] for start, stop, value in bins]

bn各ビンを保持するための変数や、その内容を反復処理するためのループは必要ありません。各ビンは、3 つの変数に直接アンパックできます。

于 2013-07-17T20:37:57.987 に答える
0

別のオプションを使用していますmap

>>> bins = [['1', '2', '3.5'], ['4', '5', '6.0']]
>>> map(lambda x: [int(x[0]), int(x[1]), float(x[2])], bins)
[[1, 2, 3.5], [4, 5, 6.0]]
于 2013-07-17T20:37:52.083 に答える