概要
オライリージャパンの「Pythonからはじめる数学入門」の演習をやってみたメモ。
あくまでも個人的な学習メモです。
最初の回答
def print_num(number):
# print([number + 2 for i in range(2, 11) if number % 2 == 0])
print('偶数です' if number % 2 == 0 else '奇数です')
for item in range(2, 11):
number += 2
print(int(number), end=" ")
if __name__ == '__main__':
number = float(input('what your number: '))
if number.is_integer():
print_num(number)
else:
print('整数を入れてください。')
改良
改良ポイント
整数や小数が入力されたときは良いが、アルファベットなどが入ってきたときには異常終了してします。
そこでtry..except を入れた。
def print_num(number):
print('偶数です' if number % 2 == 0 else '奇数です')
for item in range(2, 11):
number += 2
print(int(number), end=" ")
if __name__ == '__main__':
try:
number = float(input('what your number: '))
if number.is_integer():
print_num(number)
else:
print('整数を入れてください。')
except ValueError:
print('整数を入れてください。')
まとめ
改良は回答を参考に行った。
if文の書き方など、回答とは異なる部分もあるものの、これはこれでOK。
今後、例えばパフォーマンスの観点からどうすると良いとかは検証していきたい。