見出し画像

36歳が初めてプログラムを勉強してみる(15日目)

今日もpaizaでPythonの勉強しました。

今日学んだことです。

【学んだこと】

・2次元リストを使ってドット絵を表示してみた
・3
次元リストを使ってドット絵を表示してみた

それぞれ次のようなことをやりました。

【やったこと】

2次元リストを使ってドット絵を表示してみた

今回は2次元リストを使って、簡単なdot絵を表示してみました。

【ドット絵を作成する方法】

2次元リスト変数 =[["要素1", "要素2","要素3", "要素4","要素5"],
                                ["要素6", "要素7","要素8", "要素9","要素10"],
                                ["要素11", "要素12","要素13", "要素14","要素15"],
                                ["要素16", "要素17","要素18", "要素19","要素20"],
                                ["要素21", "要素22","要素23", "要素24","要素25"]]

#ループでドット絵を出力する
for 変数 in リスト2次元リスト変数:
 for 変数2 in 変数:
  if 変数2 == "True":
   print("適当な記号", end = "")
  else:
   print("空白", end = "" )
 print() print()

それでは実際のコードを見ていきましょう。

--コード--
dot = [[0,1,0,0,0,0],
       [1,1,1,1,1,1],
       [0,1,0,0,1,0],
       [0,1,0,0,0,0],
       [0,1,1,1,1,1]]
   
for list1 in dot:
 for list2 in list1:
  if list2 == 1:
   print("#" , end = "")
  else:
   print(" " , end = "")
 print()

print(list2)

--出力結果--
 #    
######
 #  # 
 #    
 #####

このコードでは、dot変数にカタカナの「セ」が表示されるように「0、1」を配置して格納しています。

最初のfor文で1行ずつ1つ目のリストを取り出し、2つ目のfor文でさらにリストの中をlist2の変数に代入しています。

その後、if文を利用して、もしlist2の値が「1」であれば、「#」を出力し、そうでない場合は「空白」の文字列を出力しています。

最後に、改行するためのprint関数を使っています。

結果はちゃんとカタカナの「セ」が出力されました。

・3次元リストを使ってドット絵を表示してみた

続いては、3次元リストを使って、簡単なdot絵を表示してみました。

【ドット絵を作成する方法】

2次元リスト変数 =[["要素1", "要素2","要素3", "要素4","要素5"],
                                ["要素6", "要素7","要素8", "要素9","要素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","要素48", "要素49","要素50"]]]

#ループでドット絵を出力する
for 変数 in リスト3次元リスト変数:
 for 変数2 in 変数:
  for 変数3 in 変数2:
   if 変数3 == "True":
    print("適当な記号", end = "")
   else:
    print("空白", end = "" )
  print()

それでは実際のコードを見ていきましょう。

--コード--
dot =[[[0,1,0,0,0,0],
      [1,1,1,1,1,1],
      [0,1,0,0,1,0],
      [0,1,0,0,0,0],
      [0,1,1,1,1,1]],
     [[0,0,0,0,0,0],
      [0,1,0,1,0,0],
      [0,1,0,1,0,1],
      [0,1,0,1,1,0],
      [1,0,0,1,0,0]],
     [[0,0,0,0,0,0],
      [1,1,1,1,1,1],
      [0,0,0,0,1,0],
      [0,0,0,1,0,0],
      [0,0,1,0,0,0]]]
             
for list1 in dot:
   for list2 in list1:
       for list3 in list2:
           if list3 == 1:
               print("@", end = "")
           else:
               print(" ", end = "")
       print()        

--出力結果--
 @    
@@@@@@
 @  @ 
 @    
 @@@@@
     
 @ @  
 @ @ @
 @ @@ 
 @ @  
     
@@@@@@
    @ 
   @  
  @   

このコードでは、以下のようになっています。

1.1つ目のfor文で3次元リストの3つのリストを取り出しています。
2.2つ目のfor文で1リスト毎に取り出ししています。
3.3つ目のfor文でリストの中の文字を1つずつ取り出しています。
4.if文でリストの文字が「1」だった場合、「@」を出力し、それ以外だった場合に空白を出力しています。
5.最後のprint関数は改行に使っています。

そして、結果として、「セルフ」という文字を出力してみました。

本日はここまでです。

以上です。ありがとうございました。

この記事が気に入ったらサポートをしてみませんか?