↓ メインコンテンツへスキップ

ℹ️ FAQ

目次

よくある質問をまとめています。 ここにない質問は、Microsoft Teams で聞いてください。 同じ質問が多ければ、ここに追加していきます。

授業について
#

授業の進め方は?
#

各回、講義資料の説明(講義)と、例題・課題に取り組む時間(演習)を交互に繰り返します。 講義資料は事前に公開しているので、授業の前に一度読んで、例題を動かしておいてください。 授業中は分からないところを質問する時間、と考えてもらうのが理想です。

資料はどこにありますか?
#

すべてこの Web サイトにあります。 各回のページ(第01講 など)に、講義資料、週次課題、まとめ、配布ファイルがまとまっています。 Moodle には各回へのリンクと、課題の提出場所があります。

シラバスシステムの内容と回の構成が違うのはなぜですか?
#

学ぶ内容は同じですが、進め方を少し変えています。 旧 02〜04 講を 02・03 講にまとめ、その分で機械学習を 2 回から 3 回に増やしました。 詳しくはシラバスの「シラバスシステムの内容からの変更について」を見てください。

成績はどう決まりますか?
#

主に、最終課題、期末試験(第14回)、中間試験(第05回・第10回)の 3 つです。 週次課題の合計点も加味することがあります。 割合など詳しくはシラバスと、授業中の説明を参照してください。

教科書は必要ですか?
#

「やさしいPython」(高橋麻奈、SBクリエイティブ)を教科書にしています。 講義資料の各所に「教科書 p.NNN」と参照ページを書いているので、資料だけで分からないときは教科書の該当箇所を読んでください。

環境について
#

どの Python を使えばよいですか?
#

プログラミング演習A と同じく、macOS 標準の Python(python3 コマンド)を使います。 検索して出てきた方法でむやみにインストールしないでください。 インストール方法によってバージョンや置き場所が変わり、「ある人の環境では動くが自分の環境では動かない」という問題の原因になります。 詳しくはPython実行環境を見てください。

python3 コマンドが見つかりません
#

まず python3 --version を実行してください。 command not found と出る場合は、プログラミング演習A のPython実行環境の準備の手順を確認してください。 どうしても手元の環境で動かない場合は、Visual Studio Code と Docker を使う開発コンテナの方法もあります。

エディタは何を使えばよいですか?
#

Visual Studio Code を推奨します。 授業もこれを前提に説明します。

pip3 install で入れたモジュールが import できません
#

pip3 と python3 が別々の Python を指していることが多いです。 python3 -m pip install モジュール名 のように、使っている python3 経由でインストールしてください。 第08講以降で使う numpy、matplotlib、scikit-learn、第11講以降の pygame は、それぞれの回の資料にインストール方法を書いています。

ファイルが見つからない(FileNotFoundError)と言われます
#

プログラムは「ターミナルで今いるフォルダ」を基準にファイルを探します。 pwd(今いる場所を表示)と ls(ファイル一覧)で、プログラムとデータファイルが同じ場所にあるか、そこで python3 を実行しているかを確かめてください。 Visual Studio Code のターミナルは、開いているフォルダが基準になります。

課題について
#

課題はどこに提出しますか?
#

Moodle の各回のページに提出場所があります。 課題ごとに指定されたファイル名(combination.py など)で提出してください。 ファイル名が違うと採点できないことがあります。

配布ファイル(lessonNN.zip)には何が入っていますか?
#

例題のプログラム、週次課題の雛形(assignments/ フォルダ)、課題で使うデータファイルです。 雛形は課題で指定したファイル名になっているので、これに書き足して提出してください。 例題のプログラムは、資料を読みながら 自分で書く ことを勧めます。写して動かすだけでは身につきません。

「発展課題(任意)」は提出しなくてもよいですか?
#

はい。任意の課題は提出しなくても不利にはなりません。 余裕があるときに挑戦してください。

雛形にある assert 文は何ですか?
#

その課題の答え合わせをするテストです(第03講で学びます)。 正しく書けていれば何も表示されずに終わり、間違っていると AssertionError とメッセージが表示されます。 提出前に、assert がすべて通ることを確かめてください。 assert 文を消したり書き換えたりして提出しないでください。

課題の締切を過ぎてしまいました
#

Moodle の設定に従います。提出できる状態なら、遅れても提出してください。 事情がある場合は Teams で相談してください。

友達と相談してもよいですか?
#

考え方を相談したり、教え合ったりすることは歓迎します。 ただし、提出するプログラムは自分で書いてください。 他の人のプログラムを写して提出した場合、写した側も写させた側も不正行為として扱います。

エラーが出たとき
#

エラーメッセージのどこを読めばよいですか?
#

まず 最後の行 を読んでください。エラーの種類(NameError、TypeError など)と説明が書かれています。 次に、その上にある File "...", line NN で、どのファイルの何行目かが分かります。 よくあるものは次の通りです。

エラーよくある原因
SyntaxError括弧やクォートの閉じ忘れ、: の付け忘れ、全角文字
IndentationError字下げがそろっていない(タブと空白の混在)
NameError変数名や関数名の打ち間違い、定義する前に使っている
TypeError型が合わない(文字列と数値を足そうとした、None に演算した)
IndexError / KeyErrorリストの範囲外、ディクショナリにないキー
FileNotFoundErrorファイルの場所が違う(上の「ファイルが見つからない」を参照)
RecursionError再帰呼び出しが止まらない(第04講を参照)
ModuleNotFoundErrorモジュールが未インストール(上の pip3 の項を参照)

何も表示されずに終わります
#

assert だけのプログラムなら、それが正常です(すべてのテストに通っています)。 結果を表示したいなら print を足してください。 また、関数を定義しただけで呼び出していない、というのもよくあります。

質問するときに何を書けばよいですか?
#

「動きません」だけでは答えられません。次の 3 つを書いてください。

  1. 何をしたか(どのファイルを、どのコマンドで実行したか)
  2. 何が起きたか(エラーメッセージは 全部 コピーして貼る。スクリーンショットより文字の方が助かります)
  3. 何が起きると思っていたか

試験について
#

中間試験・期末試験はどんな形式ですか?
#

文章の穴埋め(選択式)、プログラムの穴埋め、プログラムの作成です。 時間は 60 分、持ち込み不可です。 範囲と日程は第05講、第10講、第14講の各ページに書いています。

試験勉強は何をすればよいですか?
#

各講の「まとめ」ページで用語と構文を確認し、週次課題を もう一度何も見ずに 解いてみてください。 例題を写すだけでなく、自分で書けるかどうかが問われます。

生成 AI について
#

ChatGPT などの生成 AI を使ってもよいですか?
#

使うこと自体は禁止しません。 ただし、課題をそのまま投げて出てきた答えを確認せずに提出するのは、自分のスキルが何も上がらないので勧めません。 試験は持ち込み不可なので、自分で書けないと困るのは自分です。 お勧めの使い方は次の通りです。

  • 例題のプログラムを説明してもらう
  • 期待通りに動かないプログラムの原因を教えてもらう
  • どう書けばよいかのヒントをもらう(答えを丸ごともらうのではなく)
  • 正しく書けたかをどう確かめればよいかを教えてもらう

最終課題では、生成 AI や既存のコードを利用した場合はその利用状況を README.md に書いてもらいます(最終課題を参照)。

その他
#

資料の間違いやリンク切れを見つけました
#

Teams で教えてください。修正します。 GitHub の ksubpb/2026 に Issue や Pull Request を出してもらっても構いません。