問005.
答えと解説は下にあります。
問題番号をクリックすると、答えに飛びます。
(1)
1以上50以下の整数を小さい順に、1行ずつ改行して出力してください。
#期待する出力例
1
2
3
…
50
(2)
51以上99以下の整数を小さい順に、半角スペース区切りで出力してください。
#期待する出力例
51 52 53 ... 99
(3)
下のようなリスト student があります。このリスト内の要素を半角コンマ区切りで全て出力してください。
student = ["Sato","Suzuki","Takahashi","Tanaka","Ito","Watabe","Yamamoto","Nakamura","Kobayashi","Kato",]
#期待する出力例
Sato,Suzuki, ... ,Kato
(4)
(3)のリスト student 内の要素を「0 Sato」のように「インデックス値+名前」の形で、1行ずつ改行して全て出力してください。インデックス値と名前の間には半角スペースを入れてください。
#期待する出力例
0 Sato
1 Suzuki
...
9 Kato
(5)
下の辞書 number_student の値(value)を1行ずつ改行して全て出力してください。
number_student = {5:"Yoshida",4:"Yamada",6:"Sasaki",1:"Yamaguchi",2:"Matsumoto",3:"Inoue"}
#期待する出力例
5
4
6
1
2
3
(6)
(5)の辞書 number_student について「○○の番号は□です」という形式で、1行ずつ改行して全て出力してください。
#期待する出力例
Yoshidaの番号は5です
Yamadaの番号は4です
……
Inoueの番号は3です
(7)
下の辞書 age_member のキーは「各メンバーの名前」を、値は「年齢」を表しています。この全メンバーの平均年齢を出力してください。
age_member = {"Kimura":19,"Hayashi":23,"Saito":26,"Shimizu":20,"Yamazaki":21,"Mori":25,"Ikeda":22,"Hashimoto":29,"Abe":19,"Ishikawa":20}
#期待する出力例
22.4
(8)
0以上100以下の整数を小さい順に、1行ずつ改行して出力してください。ただし、24.1×1.3の値よりも大きいものは出力しないでください。
#期待する出力例
0
1
2
…
31
(9)
下のリスト age には、年齢の情報が格納されています。
20以上なら「あなたは○○歳です」、19以下なら「あなたは○○歳です」と表示したあと改行して「購入できません」と出力してください。
age = [23,28,18,16]
#期待する出力例
あなたは23歳です
あなたは28歳です
あなたは18歳です
購入できません
あなたは16歳です
購入できません
答えと解説は下にあります。
問題番号をクリックすると、答えに飛びます。
答005.
1以上50以下の整数を小さい順に、1行ずつ改行して出力してください。
#解答例
for i in range(1,51):
print(i)
#別解
for i in range(50):
print(i + 1)
for 変数 in オブジェクト:
例えば、
for i in ["a","b","c"]:
print(i)
というコードを書いたとします。
このコードでは、
[“a”,”b”,”c”]から1つの要素”a”を取り出す
↓
”a”を変数 i に代入する
↓
i の値を出力する
↓
[“a”,”b”,”c”]から1つの要素”b”を取り出す
↓
……
といった感じに処理が進められていきます。
① 1行目のコロン「:」を忘れない!
② インデントを忘れない!
range( 開始数,終了数 )
を使えば、(開始数)以上(終了数)未満の整数を生成することができます。
開始数が0のときは、省略できます。
51以上99以下の整数を小さい順に、半角スペース区切りで出力してください。
#解答例
for i in range(51,100):
print(i, end=" ")
end=” 最後に埋め込みたい文字列 “
これはprint関数のオプション引数で、文字列の末尾に文字列を追加できます。
改行したくない場合は end=””
空白で区切りたい場合は end=” “
カンマで区切りたい場合は end=”,”
などとすればいいです。
リスト student があります。このリスト内の要素を半角区切りで全て出力してください。
#解答例
student = ["Sato","Suzuki","Takahashi","Tanaka","Ito","Watabe","Yamamoto","Nakamura","Kobayashi","Kato",]
for i in student:
print(i, end=" ")
(3)のリスト student 内の要素を「0 Sato」のように「インデックス値+名前」の形で、1行ずつ改行して全て出力してください。インデックス値と名前の間には半角スペースを入れてください。
#解答例
student = ["Sato","Suzuki","Takahashi","Tanaka","Ito","Watabe","Yamamoto","Nakamura","Kobayashi","Kato",]
for i,j in enumerate(student):
print(i,j)
#別解1
student = ["Sato","Suzuki","Takahashi","Tanaka","Ito","Watabe","Yamamoto","Nakamura","Kobayashi","Kato",]
for i in student:
print(student.index(i),i)
#indexメソッドで取得してもよい。
#別解2
student = ["Sato","Suzuki","Takahashi","Tanaka","Ito","Watabe","Yamamoto","Nakamura","Kobayashi","Kato",]
for i in range(len(student)):
list_item = student[i]
print(i,list_item)
#len関数を用いて、それをインデックス値の代わりとしてもできる。
enumerate( )
カッコ内に入れたリストのindex値とvalueを取り出せます。
辞書 number_student の値(value)を1行ずつ改行して全て出力してください。
#解答例
number_student = {5:"Yoshida",4:"Yamada",6:"Sasaki",1:"Yamaguchi",2:"Matsumoto",3:"Inoue"}
for i in number_student.values():
print(i)
#number_student.values()は、number_studentのvalueを全て取り出してリスト化したもの。
(5)の辞書 number_student について「○○の番号は□です」という形式で、1行ずつ改行して全て出力してください。
#解答例
number_student = {5:"Yoshida",4:"Yamada",6:"Sasaki",1:"Yamaguchi",2:"Matsumoto",3:"Inoue"}
for i,j in number_student.items():
print(j + "の番号は" + str(i) + "です")
辞書名.items()
辞書の各要素のkeyとvalueを取り出せます。
辞書 age_member のキーは「各メンバーの名前」を、値は「年齢」を表しています。この全メンバーの平均年齢を出力してください。
#解答例
age_member = {"Kimura":19,"Hayashi":23,"Saito":26,"Shimizu":20,"Yamazaki":21,"Mori":25,"Ikeda":22,"Hashimoto":29,"Abe":19,"Ishikawa":20}
sum_age = 0
for i in age_member.values():
sum_age += i
average = sum_age / len(age_member)
print(average)
0以上100以下の整数を小さい順に、1行ずつ改行して出力してください。ただし、24.1×1.3の値よりも大きいものは出力しないでください。
#解答例
for i in range(100):
if i <= 24.1 * 1.3:
print(i)
else:
break
#別解(while文を用いて)
i = 0
while i <= 24.1 * 1.3:
print(i)
i += 1
break
これを使うと、for文のくり返し処理を途中で打ち切ります。
リスト age には、年齢の情報が格納されています。
20以上なら「あなたは○○歳です」、19以下なら「あなたは○○歳です」と表示したあと改行して「購入できません」と出力してください。
#解答例
age = [23,28,18,16]
for i in age:
print("あなたは"+str(i)+"歳です")
if i <= 19:
print("購入できません")
#別解
age = [23,28,18,16]
for i in age:
print("あなたは"+str(i)+"歳です")
if i >= 20:
continue
print("購入できません")
continue
これを使うと、continue以降の処理は無視して、次の繰り返し処理に移ります。
記事への意見・感想はコチラ