5倍速!メールマガジン
外部アカウントで登録
受講生の声
新着の講座投稿
新着の講座コメント
新着のノート投稿
投稿一覧へ新着のノートコメント
表示できる投稿はありません。
サイト運営者紹介
小川 慶一講師/教材/システム開発者紹介
この学習サイトの教材制作、サポート、システム開発をすべてやっています。
表示できる投稿はありません。
この学習サイトの教材制作、サポート、システム開発をすべてやっています。
奥 真演さんの投稿
(投稿ID: 5556) 添付ファイルのダウンロード権限がありません
15行目で、print(fish_dict)の“fish_dict”をクリックしても先生の動画と同じ操作をしているはずなのですが、値の新規追加や既存の値が更新さません。
「4個めに'maguro'] = 3」が表示されません。やfugu'] = 77になりません。
どのように操作すると動画と同じ結果が得られるでしょうか?
----------
print(fish_dict.get('maguro')) # None
fish_dict['maguro'] = 3 # 新規
print(fish_dict)
fish_dict['fugu'] = 77 # 更新
print(fish_dict)
--------
Kamさんのコメント
(コメントID: 8412)
添付画像を拝見しました。
デバッグモードで実行し、ブレークポイントのある12行目で一旦停止している状態かと思います。
この状態では、12行目以降はまだ実行されていません。つまり、14行目(’maguro’の追加)と17行目(’fugu’の更新)がまだ実行されていない状態なので、結果が異なったのだと思います。
画像の状態から、F8キー(ステップオーバー)を押して、プログラムの実行を進めます。
F8キーを1回押すと、12行目のprint文が実行され、14行目が反転した状態になります。この時、14行目はまだ実行されていません。
F8キーをもう1回押すと、14行目の’maguro’の追加が実行され、15行目のprint文が反転した状態になります。
この状態でfish_dictの中身を確認してみてください。’maguro’: 3 が反映されていると思います。
F8キーを更に2回押し、17行目の’fugu’の更新が実行された状態でfish_dictの中身を確認すると、’fugu’: 77 も反映されていると思います。
奥 真演さんのコメント
(コメントID: 8413)
細かいアドバイスありがとうございます。
期待した表示になりました。
F8キー(ステップオーバー)で次の処理を実行しておかなければいけなかったんですね。
小川 慶一さんのコメント
(コメントID: 8414)
奥さんへのコメントありがとうございます。
この回答、僕が書いたような気になっていました....奥さんからの問い合わせを見たときに「こんな方針で返事するかな-」と思っていたことがそのまま顕れていたので、すっかり。
助かりました。
奥さん:
ということですので、Kamさんのおっしゃのとおりです。
> F8キー(ステップオーバー)で次の処理を実行しておかなければいけなかったんですね。
この表現はちょっと違うかなと思います。
中断されていた行が実行されたので実行されたのは「次の処理」ではないです。
奥 真演さんのコメント
(コメントID: 8415)
2024/06/25 08:13のアドバイスありがとうございました!
また人を勘違いしての投稿、申し訳ありませんでした。
小川先生
該当行をF8キー(ステップオーバー)でプログラムの実行を行っておく。
ですね。