プログラミング入門I
2023.10.02
Pythonのインストールと基本操作

Back to index page



  1. 本日の作業内容

  2. Pythonについて

    2023年度から本学科のプログラミング学習で使用する言語がPythonに変わりました.以下のような事情で変更することとなりました.

    • 2020年あたりからPythonはC言語を抜いて世界で最も多く使用されるプログラミング言語となった.
    • 元来数学ライブラリが充実していたことから数値計算や画像処理などで多く用いられていたが,2012年以降の機械学習の爆発的な普及に伴い,AI関連で最も重要な言語となり,世界中で学習希望者が増えている.
    • 記述が比較的分かりやすい.

    上でも書いたように,書いたプログラムは直観的で分かりやすいので,頑張って学習していきましょう.

  3. 授業の進め方

    この授業は演習科目ですので,実際にみなさんが自分でプログラミング作業を行なうということを前提にしています.教室に各自のノートPCを持ち込んで作業してもらいます.反転授業という形態で実施ますが,一回分の作業内容の紹介と注意点,重要なポイント,教科書の補足説明などをこのWebページで事前学習し,授業時間に実習と時折確認テストに取り組んでもらい,授業の後には課題提出を行ってもらいます.以下のことを覚えておいてください.

    • 出席

      自動で出欠を確認できるようにするため,教室のPCにログインしてもらいます.他学科の学生さんはアカウントを作成する必要がありますので,私まで申告してください.

    • 教科書とWebページで予習

      事前にその回の授業で扱う教科書の範囲を指示しておきますので,その範囲を自分で予習してください.実際にパソコンを使用した学習が望ましいです.予習のための実習問題も次の週のWebテキストにリンクを張りますので,それを行ってください.第3回以降は宿題を用意していきます.

    • 実習作業

      実習課題を用意しますので,その課題のプログラミングを実習として行います.もちろん,教科書はしっかり読んでおいてください.

    • 質問の勧め

      実習課題は教科書に書いてあることを応用する問題を中心に用意されています.そこで,自分では分からないこともときどき出てくることがあります.質問をすることで,理解を深めて行くことができますので,遠慮なくどんどん質問をしてください.

    • 補足事項

      教科書の順番でプログラミング作業を勉強していきますが,教科書ではまだ出てきていない処理も使用します.それは「乱数」の発生の処理です.

      教科書では,パラメータを自分で入力するために input() という関数を使用しますが,この授業では input() を使用しないために乱数を用います.理由は,大勢の課題を採点する際に, input() では採点を自動化できないからです.そのため,毎回値が変わるようにするために乱数を使用します.使用方法は,Web版のこのテキストで詳しく紹介します.

    • プログラミングの考え方

      プログラミングとは面倒な処理をコンピュータにやらせるためにあるものです. 自分が楽をするためにあるので,そのような処理を考えることが重要です.数字を100個表示するプログラムでも,表示させる命令は1つで済ませるのが,プログラミングです.これについては,必要に応じてその都度説明します.ただし,大事な言葉として「アルゴリズム」というものがあります.これはどのように処理を行うかの流れのようなものですが,これを考えることが重要です.以下の例で見てみましょう.

      1. 約数を自動で探す場合

        12という整数の約数を見つけるプログラムを作るとします.以下のような手順をみなさんは考えるでしょう.

        • 1は必ず約数になる.

        • 2で割り切れるので2は約数.

        • 3でも割り切れるので3も約数.

        • 同じく4も約数.

        • 同じく6も約数.

        • 最後に自分自身も約数なので12も約数.

        さて,上記のような手順は九九を覚えている人間だからできる作業です.計算機はそんな気の利いたことはしてくれません.では,どうするのでしょうか.

        • ある変数の値を1としてその変数で12を割って割り切れたらその数は約数

        • 変数の値を1増やして同じ作業を行い,割り切れたら約数とする.

        • 上記の作業を変数の値が12(割られる数)になるまで繰り返す

        どうでしょうか.上記の2番目の作業のように同じことを規則的に繰り返すのは計算機は得意なので,このようにすると簡単に実現できます.では,もうちょっと違うケースとして20の素因数分解ではどうでしょうか?

      2. 素因数分解を自動で行なう場合

        • ある変数の値を2としてその変数で20を割って割り切れたらその数は素因数.

        • 変数で割り切れたら,もとの数を変数で割ったものに変更し,もう一回その変数で割ってみる.

        • 先ほどまでの変数では割り切れなかったら,変数の値を1増やす

        • 変数の値が割られる数と同じになったら処理を止める.

        どうでしょうか.上の2番めと3番目の処理のどちらか一方を行う作業を繰り返すことで,素因数分解が実現できます.このような処理を考えることがプログラミングです.頭の中で漠然と考えるのでは無く,上記のように言葉にすること,これを「言語化」と言いますが,それを行うことが大事です.今後は自分でいろいろ考えてみてください.

  4. 成績の評価

    第3回以降では宿題として課題を課します.宿題はレポート提出システムを用いて閲覧できるようにします.Moodle ではありませんので,本学科以外の学生さんは登録が必要です.受講の際には連絡してください.

    また,単元の区切りで授業中に理解度確認のための小テストを実施します.実施の形態はまだ未定ですが,現時点では,この教室のPCを利用して特殊な環境で行う予定です.時期が近づいてきましたら予稿演習を行いますので,またご案内します.

  5. Pythonのインストール

    教科書のp.376の「A-1 Pythonのインストール」にある通りに作業すると簡単にインストールできます.現時点でバージョンは3.11.5になっていますので,そこだけ違いますが,後は特に問題ありません.

    Pythonソフトウェア財団

    昨年度のプログラミング入門Iを履修して,Ubuntuで build-essential パッケージをインストールした人はすでにPythonは入っています.VS Codeを使用してプログラムを書きターミナルの wsl で以下のコマンドを使用してPythonプログラムを実行することが可能です.

    $ python3 hello.py

    再履修の方はお好きな方を選んで授業に参加してください.
  6. IDLEの活用

    教科書p.380の「A-2 プログラムの実行」では,いくつかのプログラムの実行方法についての説明があります.教科書では第1章で「インタラクティブシェル(基本対話モード)」で終始説明がなされていますが,それなりの長さのプログラムを作るとなると,どうしてもエディタでプログラムを書いて実行する形式の方が便利なので,第2章以降はIDLEを前提に進められます.そこで,教科書のp.382に説明のある統合開発環境のIDLEを使用してこの授業を進めます.一緒にインストールされているので,すぐに使うことができます.


    図1 IDLEの画面

    必要に応じて教科書p.384のWindows PowerShellを使うこともあるかもしれません.一応使えるようになっておいてください.
  7. Python操作入門

    本日は,まずは Python のインストールを行いますが,動作確認のためにIDLEを使用してプログラムの保存と実行ができることを確認します.

    1. プログラムの構造

      初めてプログラミングを行う時の慣例(呪縛)である,画面に Hello, world! を表示するプログラムは以下のようになります.

      print('Hello, world!')
      

      上の例のように,今後Pythonのソースコードを示す部分は緑系の色の枠を使用します.

      図2 IDLEにおいて,FileメニューからNew Fileを選択して,プログラムを貼り付けた状態の図.

      IDLEを使用するとき,Pythonのプログラムを作ると上の図2のように色分けされて表示されます.メソッドを示すえんじ色やテキストファイルを示す緑色などわかりやすいので助かります.

      プログラムを実行するには,上の Run メニューから Run Module を選ぶと別ウィンドウ (IDLE Shell) で実行してくれます.


      図3 実行結果

    2. テキストの見方

      これが Python プログラミングと実行の流れです.次週は教科書のp.6以降の流れに従ってインタラクティブシェルで作業します.3週目以降はIDLEのエディタを使用してプログラムを書いていきます.その際に皆さんが理解しやすいように,このWebテキストでは表示について以下の約束事がありますので,ここで紹介しておきます.

      • プログラミング入力作業

        先ほどの hello.py のところで示したように,黄緑色の背景で表示されているものは,IDLE のエディタで自分で入力するプログラムです.プログラム全体が表示されている場合や,特定の行だけが表示される場合など,その都度異なっているかもしれませんが,黄緑色の背景であれば,とにかくプログラムの中身を表します.

        print('Hello, world!')
        

      • 実行結果の画面表示

        Run module で作成したプログラムを実行して結果が IDLE Shell に表示されますが,その際の表示内容は,先ほどの

        
        Hello, world!
        

        の例のように薄いピンク色の背景の中に青い文字で表示しますので,入力するソースとは見た目で区別されます.ピンク色の部分は実行結果の表示ですので,覚えておいてください.

      • コマンド入力作業

        Windows PowerShell を利用してコマンド入力する部分は,コマンドプロンプト > 付きで表示します.以下のように > マークが付いているときは,ターミナルのコマンド入力を意味します.

        > python hello.py

  8. 本日のまとめ

    Pythonのインストールは無事に終わりましたでしょうか.今後は専門用語も含めた次々と新しい内容が登場しますが,あせらずに取り組んでいきましょう.

  9. 次回の予習範囲

    次回は教科書のp.6-27の範囲を学習しますので,予習をしてきてください.


目次ページに戻る