ホームページ >バックエンド開発 >Python チュートリアル >Pythonでのevalの使用法は何ですか

Pythonでのevalの使用法は何ですか

coldplay.xixi
coldplay.xixiオリジナル
2021-03-02 13:52:39119498ブラウズ

Python での eval の使用法: 文字列 str を有効な式として扱い、計算結果を評価して返します。構文は [eval(source[, globals[, locals]]) -> value] です。

Pythonでのevalの使用法は何ですか

このチュートリアルの動作環境: Windows 7 システム、Python バージョン 3.9、DELL G3 コンピューターこの方法は、すべてのブランドのコンピューターに適しています。

Python での eval の使用法:

Python eval() 関数関数: 文字列 str を有効な式として評価し、計算結果を返します。

構文:

eval(source[, globals[, locals]]) -> value

パラメータ:

  • source: 関数compile()によって返されるPython式またはコードオブジェクト

  • globals: オプション。辞書である必要があります

  • locals: オプション。任意のマップ オブジェクト

globals パラメータを指定する場合は、ディクショナリ タイプである必要があります。locals パラメータを指定する場合は、任意のマップ オブジェクトを指定できます。

Python のグローバル名前空間は globals() という名前の dict オブジェクトに格納され、ローカル名前空間は locals() という名前の dict オブジェクトに格納されます。 print (locals()) を使用すると、関数本体内のすべての変数名と変数値を表示できます。

 x = 1
 y = 1
 num = eval("x+y")
print('num',num)
 
 def g():
     x = 2
    y = 2
    num1 = eval("x+y")
    print('num1',num1)
     num2 =eval("x+y",globals())
     print('num2',num2)
     num3 = eval("x+y",globals(),locals())
     print('num3',num3)
g()
 
num 2
num1 4
num2 2
num3 4

分析: num2 にはグローバルがあるため、グローバル変数であり、実行後の結果は 4 になります。num3 にはグローバルとローカルの両方があります。この場合のみ、ローカルの値が優先されるため、計算結果は次のようになります。は 2

関連する無料学習の推奨事項: Python ビデオ チュートリアル

以上がPythonでのevalの使用法は何ですかの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。