ホームページ バックエンド開発 Python チュートリアル Pythonで関数名の文字列を介してこの関数を呼び出す方法

Pythonで関数名の文字列を介してこの関数を呼び出す方法

May 25, 2019 pm 01:50 PM
関数呼び出し

Pythonで関数名の文字列を介してこの関数を呼び出す方法

実行リスト内の関数を走査しますが、リストから取得した関数名は文字列であるため、型エラーが表示され、文字列オブジェクトを呼び出すことができません。文字列を呼び出し可能なオブジェクトにしたい場合はどうすればよいでしょうか?それとも、変数を通じてモジュール属性とクラス属性を呼び出しますか?これを実現するには 3 つの方法があります

1. eval()

Pythonで関数名の文字列を介してこの関数を呼び出す方法

##eval() は通常、文字列式を実行し、式の値を返すために使用されます。ここでは、文字列を対応する関数に変換します。 eval() は強力ですが危険であるため (eval は悪です)、推奨されません。

#2、ローカル() およびグローバル()

Pythonで関数名の文字列を介してこの関数を呼び出す方法

##locals() と globals() は Python の 2 つの組み込み関数であり、これらを介してディクショナリ内のローカル変数とグローバル変数にアクセスできます。

3. getattr()getattr() は Python の組み込み関数 getattr(object,name) です。は object.name と同等ですが、ここでは name を変数にすることができます。

foo モジュールの bar メソッドを返します

Pythonで関数名の文字列を介してこの関数を呼び出す方法Foo クラスのプロパティを返します

標準ライブラリ演算子のメソッド呼び出し関数

Pythonで関数名の文字列を介してこの関数を呼び出す方法

以上がPythonで関数名の文字列を介してこの関数を呼び出す方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

メモ帳++7.3.1

メモ帳++7.3.1

使いやすく無料のコードエディター

SublimeText3 中国語版

SublimeText3 中国語版

中国語版、とても使いやすい

ゼンドスタジオ 13.0.1

ゼンドスタジオ 13.0.1

強力な PHP 統合開発環境

ドリームウィーバー CS6

ドリームウィーバー CS6

ビジュアル Web 開発ツール

SublimeText3 Mac版

SublimeText3 Mac版

神レベルのコード編集ソフト(SublimeText3)

C++ 関数呼び出しのパフォーマンス チューニング: パラメーターの受け渡しと戻り値の影響 C++ 関数呼び出しのパフォーマンス チューニング: パラメーターの受け渡しと戻り値の影響 May 04, 2024 pm 12:57 PM

C++ 関数呼び出しのパフォーマンスの最適化には、パラメーター受け渡し戦略と戻り値の型の最適化という 2 つの側面が含まれます。パラメータの受け渡しに関しては、値の受け渡しは小さなオブジェクトや変更不可能なパラメータに適していますが、参照またはポインタの受け渡しは大きなオブジェクトや変更可能なパラメータに適しており、ポインタを渡すのが最も高速です。戻り値の最適化の観点から、小さな値は直接返すことができ、大きなオブジェクトは参照またはポインターを返す必要があります。適切な戦略を選択すると、関数呼び出しのパフォーマンスが向上します。

C++ でさまざまなモジュールの関数を呼び出すにはどうすればよいですか? C++ でさまざまなモジュールの関数を呼び出すにはどうすればよいですか? Apr 12, 2024 pm 03:54 PM

C++ でのモジュール間での関数の呼び出し: 関数の宣言: ターゲット モジュールのヘッダー ファイルで呼び出される関数を宣言します。関数の実装: ソースファイルに関数を実装します。モジュールのリンク: リンカーを使用して、関数宣言と実装を含むモジュールをリンクします。関数の呼び出し:呼び出したいモジュールに対象モジュールのヘッダファイルを組み込み、関数を呼び出します。

C++ 関数呼び出しリフレクション テクノロジー: パラメーターの受け渡しと戻り値の動的アクセス C++ 関数呼び出しリフレクション テクノロジー: パラメーターの受け渡しと戻り値の動的アクセス May 05, 2024 am 09:48 AM

C++ 関数呼び出しリフレクション テクノロジにより、実行時に関数パラメータと戻り値の情報を動的に取得できます。 typeid(decltype(...)) および decltype(...) 式を使用して、パラメーターと戻り値の型情報を取得します。リフレクションを通じて、関数を動的に呼び出し、ランタイム入力に基づいて特定の関数を選択できるため、柔軟でスケーラブルなコードが可能になります。

PHP 関数を呼び出すさまざまな方法を調べる PHP 関数を呼び出すさまざまな方法を調べる Apr 16, 2024 pm 02:03 PM

PHP 関数を呼び出すには、直接呼び出し、変数を介した呼び出し、匿名関数、関数ポインター、およびリフレクションの 5 つの方法があります。状況に最も適した方法を選択することで、パフォーマンスを最適化し、コードの簡素性を向上させることができます。

C++の関数呼び出しの仕組みを詳しく解説 C++の関数呼び出しの仕組みを詳しく解説 Apr 11, 2024 pm 02:12 PM

C++ の関数呼び出しメカニズムには、関数に引数を渡してそのコードを実行し、結果が存在する場合にはその結果を返します。パラメーターを渡すには、値渡し (変更は関数内で行われます) と参照渡し (変更は呼び出し元に反映されます) の 2 つの方法があります。値の受け渡しでは、関数内の値の変更は元の値 (printValue など) に影響しませんが、参照の受け渡しでの変更は元の値 (printReference など) に影響します。

C++ 関数呼び出しプリプロセッサ マクロ: パラメータの受け渡しと戻り値の高度な使用法 C++ 関数呼び出しプリプロセッサ マクロ: パラメータの受け渡しと戻り値の高度な使用法 May 04, 2024 pm 04:33 PM

C++ では、プリプロセッサ マクロを使用して関数を呼び出すことができます。これには次の手順が含まれます。 パラメータの受け渡し: マクロ パラメータは括弧で囲まれ、カンマで区切られます。戻り値: マクロ パラメーターを使用して、返される値を指定し、それを変数に代入します。実践例: マクロ最適化を使用して配列内の最大値インデックスの関数を見つけることにより、計算数が削減され、効率が向上します。

C++ 関数呼び出し単体テスト: パラメーターの受け渡しと戻り値の正確性の検証 C++ 関数呼び出し単体テスト: パラメーターの受け渡しと戻り値の正確性の検証 May 01, 2024 pm 02:54 PM

単体テストで C++ 関数呼び出しを検証する場合は、次の 2 点を検証する必要があります。 パラメータの受け渡し: アサーションを使用して、実際のパラメータが期待値と一致するかどうかを確認します。戻り値: アサーションを使用して、実際の戻り値が期待値と等しいかどうかを確認します。

C++ 関数呼び出しの詳細な説明: パラメーター受け渡しメカニズムの詳細な分析 C++ 関数呼び出しの詳細な説明: パラメーター受け渡しメカニズムの詳細な分析 May 04, 2024 am 10:48 AM

C++ 関数呼び出しには、値による呼び出し (パラメーター値のコピー)、参照による呼び出し (元の変数を変更できるパラメーター参照の受け渡し)、およびポインター受け渡し (パラメーター ポインターの受け渡し) の 3 つのパラメーター受け渡しメカニズムがあります。選択メカニズムでは、パラメーターのサイズ、元の変数を変更する必要があるかどうか、および効率を考慮する必要があります。

See all articles