2

リストの各行を取得して、新しいリストを作成する必要があります。説明させてください。

私はこれを持っています:

data = [[204.0, u'stock'], [204.0, u'stock']]

私はこれで変換する必要があります:

column1 = [204.0, 204.0]
colunm2 = [u'stock', u'stock']

これをどのように行うことができるかについての手がかりはありますか?

よろしくお願いします、

4

3 に答える 3

3

単純なリスト内包表記でうまくいきます。

data = [[204.0, u'stock'], [204.0, u'stock']]

column1 = [i[0] for i in data]
column2 = [i[1] for i in data]

>>> column1
 [204.0, 204.0]
>>> column2
 ['stock', 'stock']
于 2013-08-30T12:34:10.987 に答える
0

かもしれません、一行で

>>> data = [[204.0, u'stock'], [204.0, u'stock']]
>>> columns = [ [d[k] for d in data] for k in range(2)]
[[204.0, 204.0], ['stock', 'stock']]
>>> columns[0]
[204.0, 204.0]

変数のサイズが変更できる場合は、これを行うことができます:

columns = [ [d[k] for d in data] for k in range(max(map(len,data)))]
于 2013-08-30T12:37:08.130 に答える