Python勉強会
<第2回Web会議日程>
2023年12月20日(水) 19:00から
<第2回の自習範囲>
【Pythonチュートリアル】
https://docs.python.org/ja/3/tutorial/index.html
【スッキリわかるPython入門】
第3章 条件分岐
第4章 繰り返し
第5章 関数
A 1 , 4 , 7 , 10
B 0 , 3 , 6 , 9
C 1 , 4 , 7
D 3 , 6 , 9
<range関数> ※テキスト174p
range(開始値 , 終了値 [ , 増加量 ] )
開始値から増加量を足していき、終了値を超えない範囲までの、連続した数値を要素として持つオブジェクトを作成
<for文> ※テキスト171~176p
for 変数 in オブジェクト :
実行する処理
オブジェクトから順に要素を取り出し、変数に格納し、オブジェクトの個数・回数分処理を繰り返す
0から3ずつ足していき、 10を超えない連続した数値を要素として持つオブジェクトを作成
結果を list(range(0,10,3)) で確認すると、[0, 3, 6, 9] となる
1つ目の要素「0」を「i」に格納し、print(i,end=",") を実行すると、0, となる
これをrange(0,10,3)の個数分繰り返す
B 0 , 3 , 6 , 9
[実行結果]
Apple
Orange
Grape
ループ処理が終了しました!
[コード]
A pass
B break
C continue
D else:
<pass> ※テキスト146p
何の処理もしない。文法上なにかを書く必要があるが何も実行することがないときに使う。
<break> ※テキスト181~182p
繰り替えし処理を強制終了する。
<continue> ※テキスト181~182p
現在の回の繰り替えし処理のスキップし、次の回の処理に移る。
<else>
ループ処理を正常に終了した時に実行する処理
[実行結果]を確認すると、3つの要素をprintするループ処理終了後に、
"ループ処理が終了しました!"を表示させている
4つの選択肢のうち、ループ処理終了時の処理を記述できるのは、else: のみ
D else:
A ([ 1 , 4 , 9 ] , [ 8 , 27 , 64 ])
B ([ 9 ] , [ 64 ])
C ([ 1 , 8 ] , [ 4 , 27 ], [ 9 , 64 ])
D ([ 9 , 64 ])
<デフォルト引数> ※テキスト223p
関数「culc」の処理
aとbの値を2乗してそれぞれ、list1、list2に追加して返す
list1、list2は、空のリストをデフォルト引数として、定義しているが、関数定義時にしか評価されない
そのため、list1、list2の値は、前回の実行結果を引き継ぐ
([1], [8])
([1, 4], [8, 27])
([1, 4, 9], [8, 27, 64])
A ([ 1 , 4 , 9 ] , [ 8 , 27 , 64 ])
A location('Toshimaku')
B location('Toshimaku',prefecture='Tokyo','Japan')
C location('Urawa','Chiba','Japan')
D location('Yokohana',country='Japan',prefecture='Kanagawa')
<位置引数> ※テキスト208~210p
関数定義時に複数の引数を指定した場合、関数呼び出し時にも、順番通りに引数を記述する方法
<キーワード引数> ※テキスト225~226p
関数呼び出し時にどの引数にどの値を渡すのかを 引数名=値 の形式で引数を記述する方法
引数の順序に関係なく指定することができる
★両方を混ぜて関数を呼び出すことができますが、位置引数を先に書かないといけない
cityはデフォルト引数なしのため、関数呼び出し時に必須
prefecture、countryはデフォルト引数が指定されているため、関数呼び出し時に省略可能
location('Toshimaku')
cityを位置引数で指定
prefecture、countryは省略可能なので、実行可能
location('Toshimaku',prefecture='Tokyo','Japan')
city、countryを位置引数で、prefectureをキーワード引数で指定
countryの位置引数が、prefectureのキーワード引数より後に指定されているため、エラーとなる
location('Urawa','Chiba','Japan')
city、prefecture、countryを位置引数で指定、実行可能
location('Yokohana',country='Japan',prefecture='Kanagawa')
city位置引数で、country、prefectureををキーワード引数で指定
キーワード引数の場合、順序に関係なく指定することができるため、実行可能
B location('Toshimaku',prefecture='Tokyo','Japan')
match
Statements について「status」を引数として、引数によって戻り値が変わるhttp_error関数を定義
400を引数としてhttp_error関数を実行すると、以下が返ります
「record」には、名前、1回目接種日、2回目接種日と続くリスト型変数が入ると想定して、「record」を引数とするvaccine関数を定義
引数に 名前、1回目接種日 のみ定義されていたため
1つ目のケースにあてはまるパターンの結果が返る
引数に 名前、1回目接種日、2回目接種日 と定義されていたため
2つ目のケースにあてはまるパターンの結果が返る
引数に 名前、1回目接種日、2回目接種日、2回目接種日 と定義されていたため
あてはまるパターンがなく、"不正なデータです"が返る