退屈なことはPythonにやらせよう【4.10.2 文字絵グリッド】
2024-11-28 by 内田裕之
こんにちは。
Pythonで業務効率化を図るうっちゃんです。
いまは「退屈なことはPythonにやらせよう」という本でPythonを学習しています。
退屈なことはPythonにやらせよう 第2版 ―ノンプログラマーにもできる自動化処理プログラミング
今回は演習プロジェクト4.10.2 文字絵グリッドの解答です。
この記事は内容に広告・プロモーションを含みます。
演習内容
例えば次のようなリストのリストがあり、内側のリストの各要素は1文字の文字列であるとします。
grid = [['.','.','.','.','.','.'],
['.','0','0','.','.','.'],
['0','0','0','0','.','.'],
['0','0','0','0','0','.'],
['.','0','0','0','0','0'],
['0','0','0','0','0','.'],
['0','0','0','0','.','.'],
['.','0','0','.','.','.'],
['.','.','.','.','.','.']]
grid[x][y]を、文字で描かれた絵のx,y座標の文字だと考えることができます。
(0,0)は左上隅であり、x座標は右向きに増え、y座標は下向きに増えていきます。
上記のgridの値を受け取り、次のような絵として表示するコードを書きなさい。
..00.00...
.0000000..
.0000000..
..00000...
...000....
....0.....
解答
私は以下のコードを書きました。
grid = [['.','.','.','.','.','.'],
['.','0','0','.','.','.'],
['0','0','0','0','.','.'],
['0','0','0','0','0','.'],
['.','0','0','0','0','0'],
['0','0','0','0','0','.'],
['0','0','0','0','.','.'],
['.','0','0','.','.','.'],
['.','.','.','.','.','.']]
spam = [[],
[],
[],
[],
[],
[]]
for i in range(len(grid)):
for j in range(len(grid[i])):
spam[j].append(grid[i][j])
for m in range(len(spam)):
for n in range(len(spam[m])):
print(spam[m][n],end='')
print('')
Pythonを使った業務効率化プログラムも作っているので、他の記事もぜひご覧ください。
おすすめ記事
PythonでFXのデータを取得する方法【ALPHA VANTAGE】