[解決済み] Pythonの__future__は何に使うのか、いつ、どのように使うのか、その仕組みについて
質問
__future__
がPythonのモジュールに頻繁に登場します。私は
__future__
を読んでも、何のために、どのように、どのような場合に使用するのかがわかりません。
Pythonの
__future__
ドクター
.
どなたか例を挙げて説明していただけませんか?
の基本的な使い方について、いくつかお答えします。
__future__
受け取ったものは正しいようです。
しかし、もう1つ理解しなければならないことがあります。
__future__
が動作します。
私が最も混乱した概念は、現在のPythonのリリースが将来のリリースのための機能を含んでおり、将来のリリースの機能を使用するプログラムが現在のバージョンのPythonで正常にコンパイルできる方法です。
現在のリリースには、将来の潜在的な機能がパッケージされていると推測されます。しかし、その機能を利用するためには
__future__
現在の標準ではないため。私の考えが正しいかどうか教えてください。
解決方法は?
と
__future__
モジュールが含まれていれば、互換性のない変更や新しいキーワードを導入するような変更に徐々に慣れていくことができます。
例えば、コンテキスト・マネージャーを使うには、これまで
from __future__ import with_statement
は、2.5では
with
キーワードは新しいもので、これ以上変数名として使うべきではありません。そのため
with
をPythonのキーワードとして使用するには、Python 2.5以降では、上記からimportを使用する必要があります。
他の例としては
from __future__ import division
print 8/7 # prints 1.1428571428571428
print 8//7 # prints 1
がない場合は
__future__
というものがあり、両方とも
print
ステートメントを使用すると、次のように表示されます。
1
.
内部的な違いは、そのインポートがない場合です。
/
がマッピングされます。
__div__()
メソッドで、一方では
__truediv__()
が使用されます。(いずれにせよ
//
が呼び出す
__floordiv__()
.)
参考
print
:
print
は3.xでは関数になり、キーワードとしての特別な性質は失われます。つまり、逆なんですね。
>>> print
>>> from __future__ import print_function
>>> print
<built-in function print>
>>>
関連
-
python implement mysql add delete check change サンプルコード
-
Python入門 openを使ったファイルの読み書きの方法
-
[解決済み】numpyの配列連結。"ValueError:すべての入力配列は同じ次元数でなければならない"
-
[解決済み】pygame.error: ビデオシステムが初期化されていない
-
[解決済み] パラメータに**(ダブルスター/アスタリスク)、*(スター/アスタリスク)がありますが、これはどういう意味ですか?
-
[解決済み] どうすれば、文字列中のリテラルな中抜き文字を印刷し、また.formatを使用することができるのでしょうか?
-
[解決済み] スクリプトを実行しているPythonのバージョンを確認するにはどうしたらいいですか?
-
[解決済み] Pythonの "assert "はどのように使うのですか?
-
[解決済み] Python 2.Xのrange関数とxrange関数の違いは何ですか?
-
[解決済み】Python 3.6+で辞書は順番に並びますか?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
python string splicing.join()とsplitting.split()の説明
-
Python jiabaライブラリの使用方法について説明
-
Pythonの学習とデータマイニングのために知っておくべきターミナルコマンドのトップ10
-
PyQt5はユーザーログインGUIインターフェースとログイン後のジャンプを実装しています。
-
[解決済み】ImportError: sklearn.cross_validation という名前のモジュールがない。
-
[解決済み】RuntimeWarning: 割り算で無効な値が発生しました。
-
[解決済み】「SyntaxError.Syntax」は何ですか?Missing parentheses in call to 'print'」はPythonでどういう意味ですか?
-
[解決済み】Python Error: "ValueError: need more than 1 value to unpack" (バリューエラー:解凍に1つ以上の値が必要です
-
[解決済み】IndexError: invalid index to scalar variableを修正する方法
-
[解決済み] なぜfrom __future__ import print_functionを使うとPython2スタイルのprintが壊れてしまうのですか?[クローズド]