例えば、次のようなリストを仮定する。
l = [["01:北海道"],
["02:青森県","03:岩手県","04:宮城県","05:秋田県","06:山形県","07:福島県"],
["08:茨城県","09:栃木県","10:群馬県","11:埼玉県","12:千葉県","13:東京都","14:神奈川県"],
["15:新潟県","16:富山県","17:石川県","18:福井県","19:山梨県","20:長野県","21:岐阜県","22:静岡県","23:愛知県"],
["24:三重県","25:滋賀県","26:京都府","27:大阪府","28:兵庫県","29:奈良県","30:和歌山県"],
["31:鳥取県","32:島根県","33:岡山県","34:広島県","35:山口県"],
["36:徳島県","37:香川県","38:愛媛県","39:高知県"],
["40:福岡県","41:佐賀県","42:長崎県","43:熊本県","44:大分県","45:宮崎県","46:鹿児島県","47:沖縄県"]]
地区ごとにリスト化されているが、1つのリストに集約する場合、単純なやり方は for 文をネストさせることである。
pl = []
for p1 in l:
for p2 in p1:
pl.append(p2)
このような場合、内包表記を利用して1行にすることができる。
pl = [y for x in l for y in x]
入れ子の内包表記の場合、外側ループ→内側ループの順番に記載する。
0 件のコメント:
コメントを投稿