回答編集履歴
1
Python 2/3系の除算結果の違いについて言及
test
CHANGED
@@ -2,7 +2,7 @@
|
|
2
2
|
|
3
3
|
|
4
4
|
|
5
|
-
変数への代入時点で型を使い分けておくと、その後の計算結果に影響するケースがあります。
|
5
|
+
**Python 2.x系**では、変数への代入時点で型を使い分けておくと、その後の計算結果に影響するケースがあります。
|
6
6
|
|
7
7
|
```python
|
8
8
|
|
@@ -21,3 +21,13 @@
|
|
21
21
|
```
|
22
22
|
|
23
23
|
このコードの[実行結果](http://melpon.org/wandbox/permlink/FzCiLQN0R5FhzGeX)は `1, 1.5` となります。
|
24
|
+
|
25
|
+
|
26
|
+
|
27
|
+
なお**Python 3系**ならば、同コードの[実行結果](http://melpon.org/wandbox/permlink/Q4ZQkYEWE6I8G9iS)は `1.5 1.5` と型によらず結果が安定します。
|
28
|
+
|
29
|
+
|
30
|
+
|
31
|
+
これはPython 2.x系と3系の挙動の違いの一つです。Python 2系に慣れていると戸惑いますが、3系の挙動の方が「[驚き最小の原則](https://ja.wikipedia.org/wiki/%E9%A9%9A%E3%81%8D%E6%9C%80%E5%B0%8F%E3%81%AE%E5%8E%9F%E5%89%87)」に沿っているとは思います。
|
32
|
+
|
33
|
+
|