ニックジャガー日記

勝手気ままだけど自分に素直なブログ

リストと辞書の違い

いよいよjsonデータの一覧が取得できて

今度はそこから欲しいデータの取得をすることに

 

取得方法を調べた

データは入れ子(ネスト)状態になっている

 

なので、それ用のアプローチが必要

 

techacademy.jp

 

まずは上から順々に絞っていく

最初は'request'と'result'があったので、そこでd['result']とすれば、最初の階層は特定できる。そしてその下のネストにはd['result']['next']とすれば下の階層に降りれる

 

ここから少しハマった

 

辞書型だった構造が下に降りるとリスト型になってる

辞書型は{}だが、リスト型は[ ]だ

 

データを取得するのにリスト型だとfor d in data: とfor文でアプローチできるのに、辞書型はキーでアクセスする。そこの違いがわかってなかった。

 

qiita.com

 

今回、階層を降りるたびに 

print(type(data))

とやってみてリスト型か辞書型かを見て、リスト型だとわかると、そこからはfor文で取得できるようになった

for d in student:
student_name = d.get('name')
math = d.get('math')
eng = d.get('eng')
print(student_name+':'+str(math)+' '+str(eng))

 

これで名前と数学の点数、英語の点数をリストアップできた

 

一つ一つが勉強

毎日やることが大事

 

楽しいなぁ

 

 

056/100

#100DaysOfCode