この記事はWeChatの公開アカウント「Python Technology」から転載したもので、著者はPai Senjiangです。この記事を転載する場合は、Python Technology Public Account にお問い合わせください。 アルゴリズムを書くときは、常に各行の各変数を 1 つずつデバッグする必要があり、場合によっては複数の print を記述する必要があります。アルゴリズムの問題を理解するには長い時間がかかります。 pysnooper モジュールは、操作中に変数の値を出力できます。 モジュールのインストール
簡単な例簡単な例として、簡単な演繹アルゴリズムの問題を示します。
結果:
pysnooper は、行番号、行の内容、変数の結果など、実行プログラム全体を記録していることがわかります。このアルゴリズムの実際の状況を簡単に理解できます。また、コードをデバッグするために debug や print を使用する必要もありません。時間と労力を節約できます。メソッドの上に @pysnooper.snoop() という行を追加するだけです。 複雑な使用pysnooperには複数のパラメータが含まれています。見てみましょう 出力 出力はデフォルトではコンソールに出力され、設定後はファイルに出力されます。サーバーで実行する場合、特定の時間にコードの問題が発生した場合にエラーの場所を特定しやすいですが、そうでない場合は途方に暮れやすくなります。実際、私はこの問題に何度も悩まされ、そのたびに大量の髪の毛が抜け落ちました。
結果の例: ウォッチとウォッチ_explode watch は、追跡のために非ローカル変数を設定するために使用されます。watch_explode は、すべての設定された変数が監視されるのではなく、未設定の変数のみが監視されることを意味します。これは、watch とまったく逆です。
結果例 監視パラメータが追加されていません
ウォッチパラメータを追加すると、Starting var:.. indexになります。
深さ depthは関数の深さを監視します
結果例
監視結果では、呼び出された関数を監視すると、レコードにインデントが追加され、そのローカル変数と戻り値が印刷されることがわかります。 接頭辞 プレフィックス 出力コンテンツのプレフィックス
結果例
相対時間 relative_time コードが実行される時間
結果例
最大変数長 max_variable_length 出力変数と例外の最大長。デフォルトは 100 文字です。100 文字を超えると切り捨てられます。出力を切り捨てないようにするには、max_variable_length=None を設定します。
結果例
要約するこの記事では、pysnooper ツールの使い方を紹介します。pysnooper はデバッグと印刷を減らすだけでなく、アルゴリズムの問題を理解するのにも役立ちます。 |
<<: IEEE年末AIレビュー:ネットユーザーがGPT-3に悪態をつくよう教える、DeepMindが再びロボットを作る
>>: 中国の教授が犯罪認識率97%の人工知能「検察官」を開発、現在テスト中
[[435977]]現在、AI技術は急速に進歩しており、毎年多くの優れた論文が発表されています。 2...
[[428596]]専門家はCNNに対し、フェイスブックのアルゴリズムは改善できる可能性があると語...
この記事はLeiphone.comから転載したものです。転載する場合は、Leiphone.com公式...
この記事は、Heart of Autonomous Driving の公開アカウントから許可を得て転...
人工知能 (AI) の登場により、企業の運営方法は劇的に変化し、PR ボットが顧客サービスの革命にお...
放射線学誌に掲載された新しい研究によると、ディープラーニングと呼ばれる高度な人工知能は、一般的に使用...
北京時間12月6日、海外メディアの報道によると、克服すべき障害はまだ多くあるものの、自動運転車の技術...
ChatGPT のリリースに続く生成 AI モデルの急速な導入により、企業がビジネスを遂行し、顧客や...
1. ビジネスサークル1. BMWがデータ侵害を認める:BMWクラウドストレージサーバーの構成エラー...
インターネットとビッグデータ時代の到来により、リアルタイムのデータ同期は多くの企業が直面する課題とな...
人工知能と機械学習が DevOps に新たな自動化機能をもたらすにつれて、これらのテクノロジーが組織...
人工知能 (AI) は建物の避けられない未来ですが、過去 10 年間のスマート テクノロジーの採用と...