Top > テクノロジー > プログラミング

Python2系環境でもPython3系のモジュールを使う方法






Pythonの技術書やエントリーが巷に溢れる中、2系の環境だからと諦めているあなたに簡単に使えるお得なモジュールを紹介します。

本ページに掲載のリンク及びバナーには広告(PR)が含まれています。


皆さん、こんにちは。

Pythonの学習は進んでいますか??

最近は機械学習やスクレイピングの方法がPythonで書かれた書籍も多数出ており、Pythonの学習のハードルもぐっと下がってきたように感じます。

 

最近出版された技術本を眺めてみると、Python3系のコードで書かれたサンプルコードが掲載されている書籍も数多く見られます。

掲載されているコードを元に業務に生かそうと考えている方もいらっしゃると思います。

しかし、技術本の内容をそのまま使おうとしたら担当しているシステムが2系だったためにモジュールがなく、使えなかったという経験をした方も多いと思います。

ですが、諦めてはいけません。Python2系でも3系のモジュールを使う方法があります。

それは__future__モジュールを使うという方法です。

 

28.11. __future__ — future 文の定義 — Python 2.7.x ドキュメント

 

こちらの__future__モジュールを使うことで、Python3系のモジュールのうち、Python2系とは互換性が無いモジュールを、Python2系で使うことができるようになります。

 

早速、例をお見せ致します。

Python2系と3系の違いの中で有名なものに、2系では文だったprint文が3系では関数になったというものがあります。

下記に実際に試してみた例を示します。

まずは、__future__モジュールを使わなかった場合です。

 

$ python
Python 2.7.10 (default, Jul 30 2016, 19:40:32)
[GCC 4.2.1 Compatible Apple LLVM 8.0.0 (clang-800.0.34)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> print "テスト"
テスト

 

print文が実行出来ました。

続いて、__future__モジュールで試してみます。

 

$ python
Python 2.7.10 (default, Jul 30 2016, 19:40:32)
[GCC 4.2.1 Compatible Apple LLVM 8.0.0 (clang-800.0.34)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> from __future__ import print_function
>>> print "テスト"
  File "", line 1
    print "テスト"
                    ^
SyntaxError: invalid syntax

 

なんと2系にも関わらす、print文が実行出来ませんでした。

では、print関数はどうなのかを確認してみます。

 

$ python
Python 2.7.10 (default, Jul 30 2016, 19:40:32)
[GCC 4.2.1 Compatible Apple LLVM 8.0.0 (clang-800.0.34)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> from __future__ import print_function
>>> print('テスト')
テスト

 

見事、Python2系でprint関数が実行出来ました。

 

これで2系の環境でも3系のモジュールを使うことが出来ました。

最後までお付き合い頂き、ありがとうございました。


フォローして最新の情報をチェック!





おすすめ記事



人気記事ランキング



最新のお知らせ

2020年08月18日 FULL HOUSE運営メディアに「Google Map」の情報が追加されました
2020年06月05日 FULL HOUSE運営メディアに「キーワード検索」が実装されました
2020年04月16日 グルメメディア「はらへり」、"テイクアウトや宅配が利用できるお店の特集"と"コロナに苦しむ飲食店の応援キャンペーン"を開始
2020年02月03日 【祝】株式会社FULL HOUSEはお洒落なリノベ一軒家にオフィスを移転しました!
2019年11月13日 株式会社FULL HOUSE、飲食費を支給する「グルメ手当」と美容費を支給する「コスメ手当」を導入

タグ一覧

ランキング(37)
転職(79)
面接(52)
就活準備(119)
人事/採用(82)
スマホアプリ(56)
iPhoneアプリ(56)
Androidアプリ(56)
出会い系/婚活/マッチング(39)
恋愛/デート(37)
ゲーム(13)
アニメ(11)
洋楽(4)
映画(7)