pf-7. 繰り返し，リスト（Python 入門）

URL: https://www.kkaneko.jp/pro/pf/index.html

金子邦彦

1

for による繰り返し
for を用いて特定の処理を繰り返すことができる

実行結果
プログラム
• Python では，「for i in range(10)」により，i の値は，0,1, 2, 3, 4, 5, 6, 7, 8, 9 と変化する．
• for で繰り返し処理したい部分は字下げする2

trinket• Trinket はオンラインの Python、HTML 等の学習サイト• 有料の機能と無料の機能がある• 自分が作成した Python プログラムを公開し、他の人に実行してもらうことが可能（そのとき、書き替えて実行も可能）• Python の標準機能を登載、その他、次のパッケージがインストール済み
math, matplotlib.pyplot, numpy, operator, processing, pygal,
random, re, string, time, turtle, urllib.request

3

trinket でのプログラム実行• trinket は Python, HTML などのプログラムを書き実行できるサイト• https://trinket.io/python/0fd59392c8のように、違うプログラムには違う URL が割り当てられる

実行、STOP ボタン

ソースコードの実行結果
メイン画面• 実行が開始しないときは、「実行ボタン」で実行• ソースコードを書き替えて再度実行することも可能

4

演習
繰り返しでの変数値の変化
ページ６～１０【トピックス】• trinket の利用• for による繰り返し• for i in range(5) での i の値の変化• 確認クイズに自主的に挑戦

5

① trinket の次のページを開く
https://trinket.io/python/27f6ebe1da② 実行結果が，次のように表示されることを確認

Python で「i * '&'」は，& を i 個の意味になる
6

③ 確認クイズ& を 9個まで表示したい（下図のように）ときは，どのようにプログラムを書き換えますか？

自分でチャレンジしてください

このプログラムを書き換える

このような結果を得る

7

④ trinket の次のページを開く
https://trinket.io/python/b7eb532453⑤ 実行する。１×２×３×４×５の計算が行われる．
１２０が表示される

8

⑥ 確認クイズ
１×２×３×４×５×６×７×８を表示したい（下図のように）ときは，どのようにプログラムを書き換えますか？
自分でチャレンジしてください

このプログラムを書き換える

このような結果を得る

9

答え合わせ③⑥10

タートルグラフィックス
カーソルを使って絵を描く(０, 100)

タートルグラフィックスの機能をインポートする「import turtle」が必要(０, 0)(100, 0)11

タートルグラフィックス• メソッドは、オブジェクトが持つ機能を呼び出すためのもの
オブジェクト メソッド

• 「goto」は指定した座標への移動

主なメソッド• goto（＜横方向の値＞，<縦方向の値>）
移動• forward(＜移動量＞)
前進• backword(＜移動量＞)
後退• right(＜角度＞)
右回りに回転• left(＜角度＞)
左回りに回転12(0, プラスの数)(マイナスの数, 0)
亀の最初の位
置は (0, 0)(プラスの数, 0)(0, マイナスの数)

13

演習
繰り返し，変数値をマスターしていく
ページ１５，１６【トピックス】• trinket の利用• for による繰り返し• for i in range での i の値の変化• 自主的にプログラムを書き換
えて，変化をみる
14

① trinket の次のページを開く
https://trinket.io/python/895c3ea5b6② 実行結果が，次のように表示されることを確認

15

③ trinket の次のページを開く
https://trinket.io/python/0d8dbc1139④ 実行結果が，次のように表示されることを確認⑤ プログラム内の「5」や「20」や「100」や「170」をいろいろ書き換えて実行してみる
16

Python のリスト
• リストは，複数の要素を保持できる• リストの要素には順序を持ち、順序の番号はする

０から開始• リストの要素は変更可能（新しい要素の挿入，既存の要素の削除が可能）

4 を末尾に挿入

8 の削除
17

Python でのリストの組み立て

リストの組み立てを行う Python プログラム

18

演習
資料：１９ ～ ２５

【トピックス】• リスト• 繰り返し• for

19

１．月の日数6 月は 30日まである．7 月は 31日まである．
※ うるう年のことは考えないことにする① trinket の次のページを開く
https://trinket.io/python/88a728c3cb② 実行する。30, 31 が表示されることを確認③ 8月や9月について表示できるように、プログラムを変更し実行してみる

20

リストの組み立て

６番の要素、７番の要素の表示

21２．計算の繰り返し① trinket の次のページを開く
https://trinket.io/python/cc2c13d793② 実行する。結果が５つ表示されることを確認

22

リストの組み立て「y[i] = x[i] * 1.1」をi の値を変えながら5回繰り返す

23

３．重力と落下距離物体を落とすと 9.8 × (時間)2 ÷ 2 の分，落ちていく．
（空気抵抗は無視する）．時間は 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10⇒ 同じ式の計算を 11 回繰り返し① trinket の次のページを開く
https://trinket.io/python/e27702ef75② 実行する。結果が表示されることを確認

24

４．リストの組み立て，要素の挿入と削除
x = [15, 8, 6, 32 ,23]
print(x)x.append(4)print(x)x.remove(8)print(x)① trinket の次のページを開く
https://trinket.io/python/f33df42c8d② 実行する。結果が表示されることを確認

25

リストのプログラム例

26

リストを演習できる
オンラインサイトの紹介

27

「リスト」を演習できる
オンラインサイトの紹介

リストは，同じ型の要素の並び
28

① ウェブブラウザを起動する② 次の URL を開く
https://visualgo.net/ja③ 「Linked List (連結リスト)」をクリック

29

④ 説明が出る場合がある．ESC キーを押して，説明を消す⑤ 左下のメニューで「Enqueue (入れる)」をクリックし，「Go」をクリック

30

⑥

末尾に挿入されるので，確認する

31

全体まとめ• for を用いて特定の処理を繰り返すことができる．
• 「for i in range(10)」は0から9までの値を i に順次代入する• タートルグラフィックスはカーソルで絵を描くツールで、goto、forward、backward、right、leftなどのメソッドで操作• Pythonのリストは、複数の要素を一度に保持できる。リス
トの要素は順序を持ち、番号は0から始まる。
months = ["", "January", "February", "March", "April","May", "June", "July", "August", "September", "October","November", "December"]print(months[6])• 繰り返し: 繰り返し計算では、特定の計算を何度も行う。

32