ホームページ > バックエンド開発 > Python チュートリアル > Python プログラムの呼び出しプロセスを簡単に視覚化するアーティファクト

Python プログラムの呼び出しプロセスを簡単に視覚化するアーティファクト

王林
リリース: 2023-04-12 22:10:04
転載
1616 人が閲覧しました

Python プログラムの呼び出しプロセスを簡単に視覚化するアーティファクト

まずはレンダリングを見てみましょう:

Python プログラムの呼び出しプロセスを簡単に視覚化するアーティファクト

どうですか、とても素晴らしいです~

以下では、この視覚化プロセスを一緒に完了しましょう。

1.graphviz ツールをインストールします

画像生成のプロセスは、graphviz ツールに依存するため、最初にダウンロードしてインストールします。

ダウンロード アドレス

  • http://www.graphviz.org/download/

2. 実際の戦闘

次は2 つの Python 依存ライブラリもインストールする必要があります。

pip install pycallgraph
ログイン後にコピー

まず基本的なコードを書きましょう;

from pycallgraph import PyCallGraph
from pycallgraph.output import GraphvizOutput
class Banana:
 def eat(self):
 pass
class Person:
 def __init__(self):
 self.no_bananas()
 def no_bananas(self):
 self.bananas = []
 def add_banana(self, banana):
 self.bananas.append(banana)
 def eat_bananas(self):
 [banana.eat() for banana in self.bananas]
 self.no_bananas()
def main():
 graphviz = GraphvizOutput()
 graphviz.output_file = 'basic.png'
 with PyCallGraph(output=graphviz):
 person = Person()
 for a in range(10):
 person.add_banana(Banana())
 person.eat_bananas()
if __name__ == '__main__':
 main()
ログイン後にコピー

コードは比較的単純で、2 つの単純なクラスを定義しています。pycallgraph のコア コードは主に、with コード ブロックの下の main 関数にあります。定義したコードを一度実行します。

上記のコードを実行すると、現在のディレクトリに Basic.png 画像ファイルが生成されます。

Python プログラムの呼び出しプロセスを簡単に視覚化するアーティファクト

生成された画像から、メインコードブロックから各クラスの初期化まで、コード全体の実行プロセスを明確に確認できます。

別のより複雑な例を見てみましょう:

import re
from pycallgraph import PyCallGraph
from pycallgraph import Config
from pycallgraph.output import GraphvizOutput
def main():
 graphviz = GraphvizOutput()
 graphviz.output_file = 'regexp.png'
 config = Config(include_stdlib=True)
 with PyCallGraph(output=graphviz, config=config):
 reo = compile()
 match(reo)
def compile():
 return re.compile('^[abetors]*$')
def match(reo):
 [reo.match(a) for a in words()]
def words():
 return [
 'abbreviation',
 'abbreviations',
 'abettor',
 'abettors',
 'abilities',
 'ability',
 'abrasion',
 'abrasions',
 'abrasive',
 'abrasives',
 ]
if __name__ == '__main__':
 main()
ログイン後にコピー

コードも無責任ですが、通常のコードがコンパイラ内で呼び出されます。最終的に生成された図を見てみましょう:

Python プログラムの呼び出しプロセスを簡単に視覚化するアーティファクト

多くの通常の内部関数が内部で呼び出されるため、コード プロセス全体がはるかに複雑になっていることがわかりますが、それでも全体は非常に明確です

このサードパーティ ライブラリは、多くの Python 愛好家、特に Python 分野を始めたばかりの人にとって間違いなく朗報です。馴染みのない複雑なコード ブロックに遭遇したときは、これを使用するのもよいでしょう。視覚化を試してそれができるかどうかを確認するライブラリからインスピレーションを得てください~

以上がPython プログラムの呼び出しプロセスを簡単に視覚化するアーティファクトの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:51cto.com
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート