【Python】Python3対策メモ
Maya2020あたりからPython3系統になると思われる
今のうちからこの辺りをimportするようにして、Python3を意識したコードを書く癖を付けとくと良さそう
code:python
from __future__ import absolute_import
from __future__ import unicode_literals
from __future__ import print_function
from __future__ import division
absolute_import
Python2.7では相対インポート優先だったが、Python3からは絶対インポート優先になる
unicode_literals
Python2.7の文字列はstrとunicodeの2種類あったがPython3からは基本的にunicodeになる
それに伴いu'日本語'のような書き方はしなくて済むようになる代わりに、
通常の文字列(バイト文字列)にしたい場合はb'日本語'とする必要がある
code:python
nihongo = u'日本語'
nihongo = '日本語'
print_function
Python2.7ではprintは文法と関数の2種類あったが、Puthon3では関数に統一される
division
Python2.7では割り算/の小数点以下は切り捨てだったが、Python3からは小数点以下も保持される
切り捨ての挙動が欲しい場合は//とするとよい
その他:
Python2.7での整数はintとlongがあったが、Python3ではintに統一される