■ ループメニュー 1の1 ■
ある数字までの出力 1 Python3編
ある数字までの出力 2 Python3編
数字の受け取り 1 Python3編
数字の受け取り 2 Python3編
ある数をある回数表示 1 Python3編
ある数をある回数表示 2 Python3編
FINAL問題 a ~ z までを表示
タグ: Python
【paiza問題集】「標準入力その7」をPythonとGASの両方で解いたコード紹介リンク集
【paiza問題集】「標準入力その6」をPythonとGASの両方で解いたコード紹介リンク集
【paiza問題集】「標準入力その5」をPythonとGASの両方で解いたコード紹介リンク集
【paiza問題集】「標準入力その4」をPythonとGASの両方で解いたコード紹介リンク集
【paiza問題集】「標準入力その3」をPythonとGASの両方で解いたコード紹介リンク集
このコーナーでは、プログラミング学習コンテンツのpaizaラーニングのレベルアップ問題集の同じ問題をPythonとGAS(Google Apps Script)で解いたコードを掲載しております。
■ 標準入力メニュー3 ■
1 つの入力 Python3編
半角スペース区切りの 2 つの入力 Python3編
半角スペース区切りの 3 つの入力 Python3編
半角スペース区切りの 10 個の入力 Python3編
【半角スペース区切りの入力】半角スペース区切りの 1,000 個の入力 Python3編
【paiza問題集】「標準入力その2」をPythonとGASの両方で解いたコード紹介リンク集
このコーナーでは、プログラミング学習コンテンツのpaizaラーニングのレベルアップ問題集の同じ問題をPythonとGAS(Google Apps Script)で解いたコードを掲載しております。
■ 標準入力メニュー2 ■
2 つの文字列の半角スペース区切りでの分割 Python3編
3 つの文字列の半角スペース区切りでの分割 Python3編
【半角スペース区切りでの文字列の分割】5 つの文字列の半角スペース区切りでの分割 Python3編
【paiza問題集】「標準入力その1」をPythonとGASの両方で解いたコード紹介リンク集
このコーナーでは、プログラミング学習コンテンツのpaizaラーニングのレベルアップ問題集の同じ問題をPythonとGAS(Google Apps Script)で解いたコードを掲載しております。
1 行の入力 Python3編
2 行の入力 Python3編
3 行の入力 Python3編
10 行の入力 Python3編
【行入力】1,000 行の入力 Python3編
Pythonの辞書をループを用いて「サザエさん」のキャラを取り出す
この記事を読むことで、
・Pythonの辞書の「キー」及び「値」とは何か
・辞書自体をそのまま表示
・「辞書.items()」を使って、辞書をループを使って取り出す
の学習が出来ます。
辞書の例として、国民的アニメの「サザエさん」のキャラクターの「職業をキー」に、「キャラクターを値」にしています。
辞書は{“キー”:”値” , “キー”:”値” ,・・・}の構造になっていて、サザエさんキャラを例にすると、{“大黒柱”:”磯野波平” , “主婦”:”フグ田サザエ”}などになります。
サザエさんキャラの中から、こちらの5名を用意しました。
辞書の名前は「chara_dic」です。
#サザエさんのキャラクターの辞書
#職業や特徴を「キー」、名前を「値」
chara_dic={'大黒柱':'磯野波平','主婦':'フグ田サザエ','小学生':'磯野カツオ','幼児':'フグ田タラオ','ペット':'タマ'}まずは、ループで辞書のキーと値を取り出す前に、print関数でシンプルに辞書自体を表示させてみます。
コードはこちらです。
#サザエさんのキャラクターの辞書
#職業や特徴を「キー」、名前を「値」
chara_dic={'大黒柱':'磯野波平','主婦':'フグ田サザエ','小学生':'磯野カツオ','幼児':'フグ田タラオ','ペット':'タマ'}
#辞書自体を「そのまま」出力
print(chara_dic)辞書を「そのまま」取り出した実行結果です。

無事に出力されましたが、少し見辛いですよね。
そこで、今度はこの辞書をループを使って出力してみます。
コードに下記を追加します。
キーになるのはkey:職業や特徴で、値となるのはvalue:キャラクター名として、
forループで(key,value)を指定とすると、「大黒柱,磯野波平」から、「ペット,タマ」までの全てのメンバーを取り出せます。
#書き方は、「 辞書.items(): 」
chara_dic.items()を使って、キーであるkeyと、値であるvalueを取り出します。
ここまでのコードと実行結果です。
#サザエさんのキャラクターの辞書
#職業や特徴を「キー」、名前を「値」
chara_dic={'大黒柱':'磯野波平','主婦':'フグ田サザエ','小学生':'磯野カツオ','幼児':'フグ田タラオ','ペット':'タマ'}
#辞書.items()を使ってループで出力
for (key,value) in chara_dic.items():
print(key,value)
これでも辞書の「キー」と「値」が表示されて、先程よりかは幾分見やすくなりましたが、もう少し日本語の体裁を整えたいと思います。
下記のようにprint文内の日本語を整えて表示します。
print(key+"の、"+value+"さんです。")ここまでのコードと実行結果です。
#サザエさんのキャラクターの辞書
#職業や特徴を「キー」、名前を「値」
chara_dic={'大黒柱':'磯野波平','主婦':'フグ田サザエ','小学生':'磯野カツオ','幼児':'フグ田タラオ','ペット':'タマ'}
#辞書.items()を使ってループで出力
for (key,value) in chara_dic.items():
print(key+"の、"+value+"さんです。")
もう少し「キー」と「値」を見やすくしたいので、コードをこの様に書き換えます。
print("【"+key+"】の、【"+value+"】さんです。")ここまでのコードと実行結果です。
#サザエさんのキャラクターの辞書
#職業や特徴を「キー」、名前を「値」
chara_dic={'大黒柱':'磯野波平','主婦':'フグ田サザエ','小学生':'磯野カツオ','幼児':'フグ田タラオ','ペット':'タマ'}
#辞書.items()を使ってループで出力
for (key,value) in chara_dic.items():
print("【"+key+"】の、【"+value+"】さんです。")
お疲れ様でした。ブレイクタイムPhotoは、

千葉県の房総半島、外房の御宿の海です。
ご精読誠にありがとうございました。
■ 独習Python ■
Kindle版
単行本(ソフトカバー)
PythonのリストをループとIF文、enumerate関数を使ってサザエさんキャラを取り出してみた。
この記事を読むことで、
・Pythonのリストを単純にループを使って取り出す方法
・enumerate関数を使って取り出す方法
・IF文の復習
・strで数値と文字列をprint文で表示する方法
が可能になります
具体例として使うのは、国民的アニメのサザエさんです。
その中から4人の名前をcharacterというリストにこの様に格納しました。
chara=['波平','サザエ','カツオ','タマ']リストの添え字は「0(ゼロ)」から始まります。
このリストの場合、末尾の「タマ」は3です。
このリストの添字0の波平さん、添字1のサザエさん、添字2のカツオまでが「人間」で、添字3のタマが「猫ちゃん」です。
そこで、typeという変数を用意して、添え字が3のタマの場合のみtypeを「猫ちゃん」に、それ以外は「人間」と表示する様にプログラミングしました。
シンプルなIF文による分岐をしています。
#サザエさんのキャラクターのリスト
chara=['波平','サザエ','カツオ','タマ']
#ループを使ってリストを取り出す
#i=3のタマのtypeを「猫ちゃん」にする
for i in range(len(chara)):
if i==3:
type='猫ちゃん'
else:
type='人間'
print(chara[i]+':'+type)実行結果です。

このコードにenumerate関数を使うと、添字と値を同時に表示させることが可能になります。
enumerateを使うことによって、リストの添字i=0,1,2,3とリストの中身のキャラクターを同時に扱えます。
#サザエさんのキャラクターのリスト
chara=['波平','サザエ','カツオ','タマ']
#ループを使ってリストを取り出す
#i=3のタマのtypeを「猫ちゃん」にする
for i,member in enumerate(chara):
if i==3:
type='猫ちゃん'
else:
type='人間'
print(i,member+':'+type)このように書き換えられます。
実行結果です。

更に最後のprint文を変更して、実行結果に表示する日本語を、より伝わりやすく改変することも可能です。
str(i)を使うことによって、数値を文字と一緒にprint文内に表記しております。
#サザエさんのキャラクターのリスト
chara=['波平','サザエ','カツオ','タマ']
#ループを使ってリストを取り出す
#i=3のタマのtypeを「猫ちゃん」にする
for i,member in enumerate(chara):
if i==3:
type='猫ちゃん'
else:
type='人間'
print('家族No.'+str(i)+' '+member+'さんは「'+type+'」です。')実行結果です。

この様に、enumerate関数を使うと表記の自由度が増します。
ループ、リストとセットで復習にもなりました。
お疲れ様でした。ブレイクタイムPhotoは、

千葉県房総半島外房、御宿の海です。
ここの海は透明度が高いことが魅力の一つです。
ご精読誠にありがとうございました。
■ 独習Python ■
Kindle版
単行本(ソフトカバー)
