0

次の形式のリストがあります。

[[[u'Hot Dogs', u'hotdog'], [u'Food Stands', u'foodstands']], [[u'Scandinavian',       u'scandinavian'], [u'Breakfast & Brunch', u'breakfast_brunch'], [u'Coffee & Tea', u'coffee']],    [[u'Burgers', u'burgers']]]

各リストから最初の項目を削除し (2 番目の重複にすぎません)、複数の [] で囲むのではなく、これらの個々のタグの単純なリストを返したいと思います。どうすればこれを行うことができますか?

編集:以下に示すように、各行が各リストの2番目のタグを表すリストのリストを返したいと思います

4

2 に答える 2

3

リスト内包表記を使用すると、簡単に実行できます。

[y[1] for x in l for y in x]

wherelは指定したリストです。

于 2013-11-03T13:48:25.383 に答える
2

あなたが望むのはこれだと思います:

rawList = [[[u'Hot Dogs', u'hotdog'], [u'Food Stands', u'foodstands']], [[u'Scandinavian',       u'scandinavian'], [u'Breakfast & Brunch', u'breakfast_brunch'], [u'Coffee & Tea', u'coffee']],    [[u'Burgers', u'burgers']]]
finalList = []

for l in rawList:
    finalList.append([i[0] for i in l])

出力は次のようになります。

[[u'Hot Dogs', u'Food Stands'], [u'Scandinavian', u'Breakfast & Brunch', u'Coffee & Tea'], [u'Burgers']]
于 2013-11-03T14:08:53.053 に答える