2019年1月4日金曜日

開発環境

退屈なことはPythonにやらせよう ―ノンプログラマーにもできる自動化処理プログラミング (Al Sweigart(著)、相川 愛三(翻訳)、オライリージャパン)の第I部(Pythonプログラミングの基礎)、2章(フロー制御)、2.11(演習問題)2-8、9、10、11、12、13、14、発展問題の解答を求めてみる。

コード

Python 3

#!/usr/bin/env python3
from spam import bacon
import spam
print('2-8')
print('3つ')

print('2-11')
print('breakはループから抜ける、continueはループの先頭に戻る。')

print('2-12')
print(list(range(10)) == [1, 2, 3, 4, 5, 6, 7, 8, 9, 10])
print(list(range(0, 10)) == [1, 2, 3, 4, 5, 6, 7, 8, 9, 10])
print(list(range(0, 10, 1)) == [1, 2, 3, 4, 5, 6, 7, 8, 9, 10])

print('2-13')
for n in range(1, 11):
    print(n)

i = 1
while i <= 10:
    print(i)
    i += 1

print('2-14')
spam.bacon()

bacon()

print('2-9')

for spam in range(5):
    print(f'spam: {spam}')
    if spam == 1:
        print('Hello')
    elif spam == '2':
        print('Howdy')
    else:
        print('Greetings')

print('発展問題')
print('round関数は数値を丸める。(四捨五入では無いことに注意。)')
for n in [0.5, 1.5, 2.5, 3.5, 4.5]:
    print(f'round({n}): {round(n)}')

print('abs関数は絶対値を求める。')
for n in range(-5, 6):
    print(f'abs({n}): {abs(n)}')

print('2-10')
print('無限ループからはctrl+cキーど抜け出せる。')
while True:
    pass

入出力結果(Terminal, cmd(コマンドプロンプト), Jupyter(IPython))

$ ./sample8.py
2-8
3つ
2-11
breakはループから抜ける、continueはループの先頭に戻る。
2-12
False
False
False
2-13
1
2
3
4
5
6
7
8
9
10
1
2
3
4
5
6
7
8
9
10
2-14
spam becon
spam becon
2-9
spam: 0
Greetings
spam: 1
Hello
spam: 2
Greetings
spam: 3
Greetings
spam: 4
Greetings
発展問題
round関数は数値を丸める。(四捨五入では無いことに注意。)
round(0.5): 0
round(1.5): 2
round(2.5): 2
round(3.5): 4
round(4.5): 4
abs関数は絶対値を求める。
abs(-5): 5
abs(-4): 4
abs(-3): 3
abs(-2): 2
abs(-1): 1
abs(0): 0
abs(1): 1
abs(2): 2
abs(3): 3
abs(4): 4
abs(5): 5
2-10
無限ループからはctrl+cキーど抜け出せる。
  C-c C-cTraceback (most recent call last):
  File "./sample8.py", line 52, in <module>
    pass
KeyboardInterrupt
$ cat spam.py
def bacon():
    print('spam becon')
$

0 コメント:

コメントを投稿