小規模なプログラムを実行する

Intermediate

This tutorial is from open-source community. Access the source code

はじめに

この実験では、Python プログラミングの最初の一歩を学びます。まず、Python がシステムに正しくインストールされていることを確認します。次に、Python インタラクティブインタプリタの使い方を学びます。

次に、簡単な Python プログラムを編集して実行します。この過程で作成するファイルは art.py です。

これは Guided Lab です。学習と実践を支援するためのステップバイステップの指示を提供します。各ステップを完了し、実践的な経験を積むために、指示に注意深く従ってください。過去のデータによると、この 初級 レベルの実験の完了率は 82%です。学習者から 99% の好評価を得ています。

Python のインストールを確認し、インタラクティブインタプリタを使用する

Python のインタラクティブインタプリタは非常に便利なツールです。これを使うと、Python コードを 1 行ずつ実行し、すぐに結果を確認することができます。これは初心者にとって大変便利で、全体のプログラムを書かなくても小さなコード片をテストすることができます。本格的なプログラムを書き始める前に、Python がシステムに正しくインストールされていることを確認する必要があります。その後、このインタプリタを使って Python コードを実行する方法を学びます。

Python インタプリタを起動する

  1. まず、WebIDE でターミナルを開きます。ターミナルは、コンピュータと対話するためのコマンドを入力できるコマンドセンターのようなものです。画面の下部にターミナルタブがあります。開くと、コマンドの入力を開始できます。

  2. ターミナルで、Python がインストールされているかどうか、およびインストールされているバージョンを確認します。次のコマンドを入力し、Enter キーを押します。

    python3 --version

    このコマンドは、システムに現在インストールされている Python のバージョンを表示するように要求します。Python が正しくインストールされている場合、次のような出力が表示されます。

    Python 3.10.x

    ここでの x は、インストールによって異なる特定のパッチ番号を表します。

  3. これで Python がインストールされていることがわかったので、Python インタラクティブインタプリタを起動しましょう。ターミナルに次のコマンドを入力し、Enter キーを押します。

    python3

    Enter キーを押すと、Python のバージョンやその他の詳細に関する情報が表示されます。出力は次のようになります。

    Python 3.10.x (default, ...)
    [GCC x.x.x] on linux
    Type "help", "copyright", "credits" or "license" for more information.
    >>>

    >>> のプロンプトは、Python インタプリタが起動して実行中で、Python コマンドの入力を待っていることを示しています。

簡単な Python コマンドを試す

Python インタプリタが実行されているので、いくつかの基本的な Python コマンドを試してみましょう。これらのコマンドは、Python の動作原理やインタプリタの使い方を理解するのに役立ちます。

  1. >>> プロンプトで、次のコマンドを入力し、Enter キーを押します。

    >>> print('Hello World')

    Python の print 関数は、画面にテキストを表示するために使用されます。このコマンドを実行すると、次のような出力が表示されます。

    Hello World
    >>>

    これは、print 関数が 'Hello World' というテキストを正常に表示したことを示しています。

  2. 簡単な数学計算を試してみましょう。プロンプトで次のコマンドを入力します。

    >>> 2 + 3

    Python はこの式を自動的に評価し、結果を表示します。次のように表示されます。

    5
    >>>

    これは、Python が基本的な算術演算を実行できることを示しています。

  3. 次に、変数を作成して使用します。Python の変数は、データを格納するために使用されます。プロンプトで次のコマンドを入力します。

    >>> message = "Learning Python"
    >>> print(message)

    1 行目では、message という名前の変数を作成し、その中に文字列 "Learning Python" を格納しています。2 行目では、print 関数を使って message 変数に格納された値を表示しています。出力は次のようになります。

    Learning Python
    >>>

    Python インタプリタは、コードを入力するとすぐに各行を実行します。このため、アイデアをすぐにテストし、Python の概念を学ぶのに最適なツールとなっています。

インタプリタを終了する

Python インタプリタでの実験が終了したら、次のいずれかの方法で終了できます。

  1. >>> プロンプトで次のコマンドを入力し、Enter キーを押します。

    >>> exit()

    または、次の代替コマンドを使用することもできます。

    >>> quit()

    これらのコマンドはどちらも、Python インタプリタを停止し、通常のターミナルに戻るように指示します。

  2. もう 1 つの終了方法は、キーボードで Ctrl+D を押すことです。これは、Python インタプリタを停止するショートカットです。

インタプリタを終了すると、通常のターミナルプロンプトに戻り、システム上で他のコマンドを実行できます。

簡単な Python プログラムを作成する

Python が正常に動作することを確認したので、最初の Python プログラムファイルを作成しましょう。初心者にとっては、複雑なプログラムに取り組む前に、まずは簡単なものから始めるのが良いでしょう。こうすることで、Python の基本概念と構文を徐々に理解することができます。

最初の Python ファイルを作成する

まず、新しい Python ファイルを作成します。以下はその手順です。

  1. WebIDE では、画面の左側に「エクスプローラー」パネルと呼ばれるパネルがあります。このパネルを使って、プロジェクト内のさまざまなファイルやディレクトリをナビゲートできます。このパネルを見つけましょう。

  2. エクスプローラーパネルを見つけたら、/home/labex/project ディレクトリに移動する必要があります。ここに Python プログラムを保存します。

  3. エクスプローラーパネルの任意の場所を右クリックします。メニューが表示されます。このメニューから「新しいファイル」を選択します。これにより、新しい空のファイルが作成されます。

  4. 新しいファイルを作成したら、名前を付ける必要があります。ファイル名を hello.py とします。Python では、ファイルには通常 .py 拡張子が付けられ、これはそのファイルが Python コードを含んでいることを示します。

  5. これで、新しく作成した hello.py ファイルをエディタで開きます。エディタに次のコードを入力します。

    ## This is a simple Python program
    
    name = input("Enter your name: ")
    print(f"Hello, {name}! Welcome to Python programming.")

    このコードを解説しましょう。# で始まる行はコメントです。コメントは、コードが何をするかを説明するために使われ、Python インタプリタによって無視されます。input() 関数は、ユーザーからの入力を取得するために使われます。この関数は「Enter your name: 」というメッセージを表示し、ユーザーが何かを入力するのを待ちます。ユーザーが入力した値は、name 変数に格納されます。print() 関数は、画面に出力を表示するために使われます。f"Hello, {name}!" は f-string と呼ばれ、Python で文字列の書式を設定する便利な方法です。これを使うと、変数の値を直接文字列に挿入することができます。

  6. コードを入力したら、ファイルを保存する必要があります。キーボードで Ctrl+S を押すか、メニューから「ファイル」>「保存」を選択することで保存できます。ファイルを保存することで、変更内容が保存されます。

最初の Python プログラムを実行する

Python プログラムを作成して保存したので、実行しましょう。以下はその手順です。

  1. WebIDE でターミナルが開いていない場合は、開きます。ターミナルを使って、コマンドを実行したり、プログラムを実行したりできます。

  2. Python プログラムを実行する前に、正しいディレクトリにいることを確認する必要があります。ターミナルに次のコマンドを入力します。

    cd ~/project

    このコマンドは、現在の作業ディレクトリをホームディレクトリ内の project ディレクトリに変更します。

  3. 正しいディレクトリに移動したら、Python プログラムを実行できます。ターミナルに次のコマンドを入力します。

    python3 hello.py

    このコマンドは、Python インタプリタに hello.py ファイルを実行するように指示します。

  4. プログラムが実行されると、名前の入力を求められます。名前を入力し、Enter キーを押します。

  5. Enter キーを押すと、次のような出力が表示されるはずです。

    Enter your name: John
    Hello, John! Welcome to Python programming.

    実際の出力には、「John」の代わりにあなたが入力した名前が表示されます。

この簡単なプログラムは、Python のいくつかの重要な概念を示しています。

  • Python ファイルの作成:WebIDE で新しい Python ファイルを作成する方法を学びました。
  • コメントの追加:コメントは、コードを説明し、理解しやすくするために使われます。
  • input() 関数でユーザー入力を取得する:この関数を使うと、プログラムがユーザーと対話できます。
  • データを格納するための変数の使用:変数は、プログラムの後で使用できる値を格納するために使われます。
  • print() 関数で出力を表示する:この関数は、画面に情報を表示するために使われます。
  • 文字列の書式設定に f-string を使用する:f-string は、変数を文字列に挿入する便利な方法を提供します。

より高度な Python プログラムを作成する

Python の基本をマスターしたので、次のステップとして、より高度な Python プログラムを作成しましょう。このプログラムは ASCII アートパターンを生成します。ASCII アートは、テキスト文字で構成されるシンプルで視覚的に面白いデザインです。このプログラムに取り組むことで、モジュールのインポート、関数の定義、コマンドライン引数の処理など、いくつかの重要な Python の概念を学び、適用することができます。

ASCII アートプログラムを作成する

  1. まず、WebIDE で art.py ファイルを開きます。このファイルはセットアップ時に作成されました。/home/labex/project ディレクトリにあります。このファイルを開くことが、ASCII アートプログラムを書くための始点となります。

  2. ファイルを開くと、既存の内容があるかもしれません。これからゼロから自分たちのコードを書くので、その内容をクリアする必要があります。ファイル内の既存の内容をすべて削除してから、次のコードを art.py ファイルにコピーします。このコードが、私たちの ASCII アートジェネレータの核心部分です。

    ## art.py - A program to generate ASCII art patterns
    
    import sys
    import random
    
    ## Characters used for the art pattern
    chars = '\|/'
    
    def draw(rows, columns):
        """
        Generate and print an ASCII art pattern with the specified dimensions.
    
        Args:
            rows: Number of rows in the pattern
            columns: Number of columns in the pattern
        """
        for r in range(rows):
            ## For each row, create a string of random characters
            line = ''.join(random.choice(chars) for _ in range(columns))
            print(line)
    
    ## This code only runs when the script is executed directly
    if __name__ == '__main__':
        ## Check if the correct number of arguments was provided
        if len(sys.argv) != 3:
            print("Error: Incorrect number of arguments")
            print("Usage: python3 art.py rows columns")
            print("Example: python3 art.py 10 20")
            sys.exit(1)
    
        try:
            ## Convert the arguments to integers
            rows = int(sys.argv[1])
            columns = int(sys.argv[2])
    
            ## Call the draw function with the specified dimensions
            draw(rows, columns)
        except ValueError:
            print("Error: Both arguments must be integers")
            sys.exit(1)
  3. コードをファイルにコピーしたら、作業内容を保存することが重要です。キーボードで Ctrl + S を押すか、メニューから「ファイル」>「保存」を選択して保存できます。ファイルを保存することで、コードが保存され、実行できる状態になります。

コードの理解

このプログラムが何をするのか、もう少し詳しく見てみましょう。コードを理解することは、将来的にコードを修正したり拡張したりするために重要です。

  • インポート文: import sysimport random の行は、Python の組み込みモジュールを取り込むために使用されます。sys モジュールは、Python インタプリタが使用または維持するいくつかの変数や、インタプリタと強く相互作用する関数にアクセスするためのものです。random モジュールは、乱数を生成するために使用され、これを使ってランダムな ASCII アートパターンを作成します。
  • 文字セット: chars = '\|/' の行は、ASCII アートを作成するために使用する文字セットを定義します。これらの文字は、パターンを形成するためにランダムに選択されます。
  • draw() 関数: この関数は、ASCII アートパターンを作成する役割を担っています。rowscolumns という 2 つの引数を取り、これらはパターンの寸法を指定します。関数の内部では、ループを使って chars セットから文字をランダムに選択し、パターンの各行を作成します。
  • メインブロック: if __name__ == '__main__': ブロックは、Python の特別な構造です。このブロック内のコードは、art.py ファイルが直接実行されたときにのみ実行されます。このファイルが別の Python ファイルにインポートされた場合は、このコードは実行されません。
  • 引数の処理: sys.argv 変数には、プログラムに渡されたコマンドライン引数が含まれています。正確に 3 つの引数(スクリプト自体の名前と、行数と列数を表す 2 つの数値)が提供されているかを確認します。これにより、ユーザーが正しい入力を提供することを保証します。
  • エラー処理: try/except ブロックは、発生する可能性のあるエラーを捕捉するために使用されます。ユーザーが無効な入力(行数や列数に整数でない値)を提供した場合、try ブロックで ValueError が発生し、except ブロックでエラーメッセージが表示され、プログラムが終了します。

プログラムを実行する

  1. プログラムを実行するには、まず WebIDE でターミナルを開く必要があります。ターミナルで Python スクリプトを実行するためのコマンドを入力します。

  2. ターミナルを開いたら、プロジェクトディレクトリに移動する必要があります。ここに art.py ファイルがあります。ターミナルで次のコマンドを使用します。

    cd ~/project

    このコマンドは、現在の作業ディレクトリをプロジェクトディレクトリに変更します。

  3. 正しいディレクトリに移動したら、プログラムを実行できます。次のコマンドを使用します。

    python3 art.py 5 10

    このコマンドは、Python に art.py スクリプトを 5 行 10 列で実行するように指示します。このコマンドを実行すると、ターミナルに 5×10 の文字パターンが表示されます。出力は次のようになります。

    |\//\\|\//
    /\\|\|//\\
    \\\/\|/|/\
    //|\\\||\|
    \|//|/\|/\

    実際のパターンはランダムなので、ここに示した例とは異なります。

  4. コマンドの引数を変更することで、異なる寸法のパターンを試すことができます。たとえば、次のコマンドを試してみましょう。

    python3 art.py 8 15

    これにより、8 行 15 列の大きなパターンが生成されます。

  5. エラー処理の動作を確認するには、無効な引数を提供してみましょう。次のコマンドを実行します。

    python3 art.py

    次のようなエラーメッセージが表示されるはずです。

    Error: Incorrect number of arguments
    Usage: python3 art.py rows columns
    Example: python3 art.py 10 20

コードを試す

文字セットを変更することで、ASCII アートパターンをより面白いものにすることができます。以下はその方法です。

  1. エディタで再度 art.py ファイルを開きます。ここでコードを変更します。

  2. コード内の chars 変数を見つけます。異なる文字を使用するように変更します。たとえば、次のコードを使用できます。

    chars = '*#@+.'

    これにより、ASCII アートを作成するために使用する文字セットが変更されます。

  3. 変更を加えた後、Ctrl + S または「ファイル」>「保存」を使用してファイルを再度保存します。その後、次のコマンドでプログラムを実行します。

    python3 art.py 5 10

    これで、新しい文字を使用した異なるパターンが表示されます。

この演習では、いくつかの重要な Python の概念が示されています。

  • モジュールのインポート:Python の組み込みモジュールから追加の機能を取り込む方法。
  • 関数の定義:コードを整理するために関数を定義し、使用する方法。
  • コマンドライン引数の処理:コマンドラインからユーザー入力を受け取り、処理する方法。
  • try/except によるエラー処理:プログラムでエラーを適切に処理する方法。
  • 文字列操作:ASCII アートパターンを形成するために文字列を作成し、操作する方法。
  • 乱数生成:ユニークなパターンを作成するために乱数を生成する方法。
  • リスト内包表記:Python でリストを簡潔に作成する方法で、draw() 関数で使用されています。

まとめ

この実験では、様々な Python の基礎知識を学びました。システムに Python が正しくインストールされていることを確認し、対話型インタプリタを使って簡単なコマンドを実行し、ユーザー入力を受け付ける基本的なプログラムや ASCII アートパターンを生成するプログラムを作成しました。また、構文、データ型、変数、関数定義などの重要な Python の概念も理解しました。

これらのスキルは、Python 開発の基礎となります。これで、対話型モードを使って迅速なテストを行い、完全な Python プログラムを作成して実行する方法がわかりました。Python の学習を続けるには、さらに多くの組み込み関数やモジュールを探索し、データ構造を学び、複雑な実世界のプログラムを作成し、Python のオブジェクト指向プログラミングを学ぶことを検討してみてください。