2018年12月16日日曜日

開発環境

退屈なことはPythonにやらせよう ―ノンプログラマーにもできる自動化処理プログラミング (Al Sweigart(著)、相川 愛三(翻訳)、オライリージャパン)の第I部(Pythonプログラミングの基礎)、1章(Python入門)、1.8(演習問題)1-6、7、8、9、10、発展問題を取り組んでみる。

コード(Emacs)

Python 3

#!/usr/bin/env python3

print('1-6')

bacon = 20
bacon + 1
print(bacon == 20)

print('1-7')
print('spam' + 'spamspam' == 'spamspamspam')
print('spam' * 3 == 'spamspamspam')

print('1-8')
print('変数名の先頭に数値は使えない。')

print('1-9')
print('値(1.2)を整数に変換:', int(1.2))
print('値("1")を整数に変換:', int('1'))
print('値(1)を浮動小数点数に変換:', float(1))
print('値("1.2")を浮動小数点数に変換:', float('1.2'))
print('値(1)を文字列に変換:', str(1))
print('値(1.2)を文字列に変換:', str(1.2))

print('1-10')
print('文字列と数値を足すことはできない。')
print('str関数の利用。')
n = 99
print('I have eaten ' + str(n) + ' burritos.')
print('formatメソッドに使用。')
print('I have eaten {0} burritos.'.format(n))
print('フォーマット済文字列リテラル')
print(f'I have eaten {n} burritos.')

print('発展問題')
for n in range(1, 10):
    print(f'round({1 / n}): {round(1 / n)}')
for n in range(1, 10):
    print(f'round({1 + 1 / n}): {round(1 + 1 / n)}')

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

$ ./sample6.py
1-6
True
1-7
True
True
1-8
変数名の先頭に数値は使えない。
1-9
値(1.2)を整数に変換: 1
値("1")を整数に変換: 1
値(1)を浮動小数点数に変換: 1.0
値("1.2")を浮動小数点数に変換: 1.2
値(1)を文字列に変換: 1
値(1.2)を文字列に変換: 1.2
1-10
文字列と数値を足すことはできない。
str関数の利用。
I have eaten 99 burritos.
formatメソッドに使用。
I have eaten 99 burritos.
フォーマット済文字列リテラル
I have eaten 99 burritos.
発展問題
round(1.0): 1
round(0.5): 0
round(0.3333333333333333): 0
round(0.25): 0
round(0.2): 0
round(0.16666666666666666): 0
round(0.14285714285714285): 0
round(0.125): 0
round(0.1111111111111111): 0
round(2.0): 2
round(1.5): 2
round(1.3333333333333333): 1
round(1.25): 1
round(1.2): 1
round(1.1666666666666667): 1
round(1.1428571428571428): 1
round(1.125): 1
round(1.1111111111111112): 1
$

0 コメント:

コメントを投稿