練習問題【Python・制御構文】

はじめに

今回はPythonの制御構文の練習をします。

JavaやC言語出身者はループを回すときに i や j を多用してしまう事が多いです。

プログラミングを行う上で、より良いコードを書くためには変数名なども重要になってきます。i や j を用いてしまうとその変数名自体の意味が掴みにくくなってしまいます。後々読み返した際に何をやっているか理解しにくくなる原因となります。

なので、極力 i や j を使わないように心がけましょう。

余談になりますが、「良いコードとはどんなコードのことを言うのか」これってすごく重要ですけど、なかなかわからないことですよね。チームで何かを作っていく上では良いコードを書くことは非常に重要になります。(個人でやる場合でも重要)

「良いコードとは何か」が気になる方はぜひこちらの本を読んでみて下さい。すごくわかりやすく「良いコード」について書かれています。

 

それでは、良いコードを意識しつつ問題を解いていきましょう。

 

練習問題【初級編】

1問目:1〜100までを出力

 

解答を見る

 

2問目:a=[7, 10, 14, 17, 22, 28, 70] というリストにおいて、7で割り切れない値のみを出力

出力結果:
10
17
22

解答を見る

 

3問目:a=[‘黄色’,’青色’,”,’緑色’,”,”,’白色’,”,’赤色’,”] というリストにおいて空文字でない場合、値を出力

解答を見る

 

中級編

4問目: a = [1,3,5,7,9,11] というリストのインデックス(行番号)と値を以下のように出力

出力結果:
0 1
1 3
2 5
3 7
4 9
5 11

解答を見る

 

5問目: a = [1,2,3,4,5], b=[6,7,8,9,10], c=[11,12,13,14,15] の同じ行同士の値の掛け算を出力

出力結果:
66
168
312
504
750

解答を見る

番外編

これまで制御構文を学んできましたが、以下の問題では、制御構文を使わずに書いてみましょう。

必要なモジュールなどを使ってもOKです。

6問目: data  という変数に以下のような1日おきの時系列データのようなものが入っています。このdata の前日差を変数diff に格納せよ。

data = [10,21,13,44,58,24,32,10,40]

diff = [11,-8,31,14,-34,37,-29,-22,30]

解答を見る