演習課題「リストの中身を1行ずつ表示してみよう」
右のコードエリアには、「A」「B」「C」という文字が、letersという3次元リストで定義されており、
そのうちの「A」の文字を出力するコードがあります。
このリストから、3文字とも出力してください。
「A」「B」「C」の各文字の間には、1行空行を挿入してください。
プログラムを実行して、正しく出力されれば演習課題クリアです!
期待する出力値
@@
@ @
@ @
@@@@@@
@ @
@ @
@@@@@
@ @
@@@@@
@ @
@ @
@@@@@
@@@@
@ @
@
@
@ @
@@@@
#08:3次元リストで複数のドット絵を表示する
ここでは、複数のドット絵を表示するために、3次元リストを使ってみます。ドット絵のパターンごとに、リストを切り替えて表示してみましょう。
カギかっこを3重にすると、3次元配列になる。enemy_img = [[[0,0,1,1,1,1,1,1,1,1,1,1,1,1,0,0],
[1,1,0,0,0,0,0,0,0,0,0,0,0,0,1,1],
[1,0,0,1,1,1,0,0,0,1,1,1,0,0,0,1],
[1,1,0,0,0,0,1,1,0,0,0,0,0,0,1,1],
[0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0],
[0,0,0,1,1,1,0,0,0,0,0,1,1,1,0,0],
[0,0,0,0,1,1,1,0,0,0,0,0,0,1,1,1]],
[[0,0,1,1,1,1,1,1,1,1,1,1,1,1,0,0],
[1,1,0,0,0,0,0,0,0,0,0,0,0,0,1,1],
[1,0,0,1,1,1,0,0,0,0,1,1,1,0,0,1],
[1,1,0,0,0,0,0,1,1,0,0,0,0,0,1,1],
[0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0],
[0,0,0,1,1,1,0,0,0,0,1,1,1,0,0,0],
[0,0,0,1,1,1,0,0,0,0,1,1,1,0,0,0]],
[[0,0,1,1,1,1,1,1,1,1,1,1,1,1,0,0],
[1,1,0,0,0,0,0,0,0,0,0,0,0,0,1,1],
[1,0,0,0,1,1,1,0,0,0,1,1,1,0,0,1],
[1,1,0,0,0,0,0,0,1,1,0,0,0,0,1,1],
[0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0],
[0,0,1,1,1,0,0,0,0,0,0,1,1,1,0,0],
[1,1,1,0,0,0,0,0,0,0,1,1,1,0,0,0]]]
for img in enemy_img:
for line in img:
for dot in line:
if dot == 1:
print("#", end="")
else:
print(" ", end="")
print()
# coding: utf-8
# Your code here!
# 3次元リストでドット絵を表示する
enemy_img = [[[0,0,1,1,1,1,1,1,1,1,1,1,1,1,0,0],
[1,1,0,0,0,0,0,0,0,0,0,0,0,0,1,1],
[1,0,0,1,1,1,0,0,0,1,1,1,0,0,0,1],
[1,1,0,0,0,0,1,1,0,0,0,0,0,0,1,1],
[0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0],
[0,0,0,1,1,1,0,0,0,0,0,1,1,1,0,0],
[0,0,0,0,1,1,1,0,0,0,0,0,0,1,1,1]],
[[0,0,1,1,1,1,1,1,1,1,1,1,1,1,0,0],
[1,1,0,0,0,0,0,0,0,0,0,0,0,0,1,1],
[1,0,0,1,1,1,0,0,0,0,1,1,1,0,0,1],
[1,1,0,0,0,0,0,1,1,0,0,0,0,0,1,1],
[0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0],
[0,0,0,1,1,1,0,0,0,0,1,1,1,0,0,0],
[0,0,0,1,1,1,0,0,0,0,1,1,1,0,0,0]],
[[0,0,1,1,1,1,1,1,1,1,1,1,1,1,0,0],
[1,1,0,0,0,0,0,0,0,0,0,0,0,0,1,1],
[1,0,0,0,1,1,1,0,0,0,1,1,1,0,0,1],
[1,1,0,0,0,0,0,0,1,1,0,0,0,0,1,1],
[0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0],
[0,0,1,1,1,0,0,0,0,0,0,1,1,1,0,0],
[1,1,1,0,0,0,0,0,0,0,1,1,1,0,0,0]],
[[0,0,1,1,1,1,1,1,1,1,1,1,1,1,0,0],
[1,1,0,0,0,0,0,0,0,0,0,0,0,0,1,1],
[1,0,0,0,1,1,1,0,0,0,1,1,1,0,0,1],
[1,1,0,0,0,0,0,0,1,1,0,0,0,0,1,1],
[0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,0],
[0,0,1,1,1,0,0,0,0,0,0,1,1,1,0,0],
[1,1,1,0,0,0,0,0,0,0,1,1,1,0,0,0]]]
for img in enemy_img:
for line in img:
for dot in line:
if dot == 1:
print("#", end="")
else:
print(" ", end="")
print()
for文 - 繰り返し - Python入門
https://www.pythonweb.jp/tutorial/for/index3.html
繰返し処理 - for, while 等 - Python 入門
http://python.keicode.com/lang/control-flow-loop-for-while.php
【Python入門】for文の使い方総まとめ | 侍エンジニア塾ブログ | プログラミング入門者向け学習情報サイト
https://www.sejuku.net/blog/24766