ホームページ  >  記事  >  バックエンド開発  >  Pythonプログラムの実行プロセスを理解するにはどうすればよいですか?

Pythonプログラムの実行プロセスを理解するにはどうすればよいですか?

不言
不言転載
2018-10-20 15:16:482722ブラウズ

この記事の内容は、Python プログラムの実行プロセスを理解する方法についてです。一定の参考値があるので、困っている友達は参考にしていただければ幸いです。

コードの実行プロセスを理解することは、プログラミングの基本的な要件です。熟練したプログラミングのベテランは、コードを肉眼で見るだけで、その動作プロセスを理解できます。しかし、プログラミングを始めたばかりの初心者にとって、このようなことはそれほど明白ではありません。そのため、コードを書いたりデバッグしたりするとき、プログラムのロジックが少し複雑になると、コードの迷路に陥ったようになり、何が起こっているのかわかりません。

したがって、誰かが自分のコードが期待した結果をもたらさず困惑し、助けを求めるしかないときはいつでも、プログラムに出力を追加することをお勧めします。一方、プログラムの実行パスを決定するには、実行プロセス中に各変数の実際の値を観察し、どこでエラーが発生したかを確認します。

もう 1 つの方法は、IDE が提供するデバッグ機能を使用して、ブレークポイントを追加し、シングルステップ実行することでプログラムの実行状況を把握することです。 Visual Studio、Eclipse、xCode などのほとんどすべての一般的な IDE はデバッグ ツールを提供します。 Python の場合、pdb ライブラリを使用してブレークポイント デバッグを実装することもできます。

上記の 2 つの方法は、ほとんどのプログラマにとってデバッグ時の基本ルーチンです。しかし、繰り返しになりますが、初心者にとっては、そのようなツールでも使用するのは少し面倒です。

プログラムを人に説明するために、紙にプロセスやグラフィックを描くこともありますが、効果は高くなりますが、明らかに広く宣伝できる方法ではありません。後になって、そんなニーズに応えてくれるツールがあることを偶然知りましたが、プログラムがどのように動くのかを直感的に「見る」ことができ、初心者にも最適なツールでした。プログラミングに慣れておらず、プログラムの実行プロセスを理解するのが難しい人にとって、それは間違いなく「成果物」と呼ぶことができます。

これは オンライン Python 講師 です。無料のオンライン コード実行およびデモンストレーション ツール。

プロジェクトのアドレス: pythontutor.com

このプロジェクトの紹介 (インターネットから取得、ソースは不明):

オンライン Python 講師は Philip Guo によって開発されました。 学生がプログラミング学習における基本的な障害を克服し、プログラム実行時のコンピューター内のソース コードの各行のプロセスを理解できるように開発された無料の教育ツールです。このツールを通じて、教師または生徒は直接次のことを行うことができます。 Web ブラウザーで Python コードを作成し、プログラムを段階的に視覚的に実行します。

2013年12月現在、165の国と地域から延べ50名が参加 10,000 人以上がこのオンライン ツールを、教科書、配布資料、オンライン プログラミング ガイドの補足として使用しています。毎日 6,000 を超える Python スニペットを実行してデモンストレーションする プログラム。オンライン Python 講師のユーザーには、独学の初心者に加えて、Coursera、edX、Udacity のコースを受講している人も含まれます。 オンラインコースを待っている学生や、MITやカリフォルニア大学バークレー校などの大学の教師。

  • Python Tutor は、Python 2.7 と 3.3 の両方のバージョンをサポートしています。

  • Python に加えて、Java、JavaScript、TypeScript、Ruby も実行でき、C と C をサポートするバージョンもあります。

  • JS コード行を使用して、このツールを独自のページに埋め込むことができます。

  • コードを他のユーザーと直接共有するためのリンクを生成することもできます。

  • 単体テスト機能が付属しています。

  • Web サイトでは、いくつかの古典的なアルゴリズムを含む多くの例も提供しています。

その使用プロセスをもう一度体験してみましょう:

エディターにコードを入力し、[実行の視覚化] をクリックして実行してデモンストレーションします。

import random

def fn(x):
    return x**2

result = []
for i in range(3):
    t = random.randint(1, 10)
    print t
    r = fn(t)
    result.append(r)
print result

ループ、リスト、関数、モジュールを含むコード スニペットを使用しました。効果を見てみましょう:

Pythonプログラムの実行プロセスを理解するにはどうすればよいですか?

#左上がコードで、矢印は現在のコードを示します。ランニングポジション。

下のボタンと進行状況バーを使用して、プログラムの進行状況を直接制御できます。

左下は出力です。

右側はプログラムの視覚的なシミュレーションです。この例では、プロセス中の変数の変化、関数がいつ呼び出されたか、その他の情報が明確にわかります。

ただし、多くのオンライン実行環境と同様、Python Tutor は実行中の入力機能をサポートしていません。そのため、番号当てやペナルティキックのミニゲームを直接置くことはできません。将来的にこの機能が追加されることを願っています。

Python Tutor を使用すると、一部のアルゴリズムをより簡単に理解できます。最後に、バブル ソートの実装、[](http://crossin-forum.b0.upaiy...

Pythonプログラムの実行プロセスを理解するにはどうすればよいですか?

以上がPythonプログラムの実行プロセスを理解するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はsegmentfault.comで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。