ChatGTP スキルアップ プログラミング学習

【プログラミング】Python制御構文と関数をChatGPTで再確認

記事内に商品プロモーションを含む場合があります

今回は、pythonの制御構文と関数について学び直していきます。
前回はChatGPTでPython基礎再学習:データ型と操作をやっていきましたので参考にしてみてください!!

このブログは、以前Pythonを学んでいたのですが、途中で挫折してしまった経験がある私が、今回はChatGPTを活用して、より効果的に学習を進める方法を試してみます。

プログラミング初心者である私が、どのようにしてPythonを習得していくのか、そのステップや学びのポイントを具体的にお伝えしていきます。私と一緒にPythonを学んでみませんか?日々の学習の中で感じたことや役立った情報をお届けします

Pythonの始め方についてはこちらの記事を参考にしてみてください!!

今回は、制御構文から始めていきます!!

ブログ内のコードはコピーして使用できます

ステップ3: 制御構文

ダダ
ダダ

ChatGPTでPython基礎再学習:データ型と操作の練習問題が終わりました。

ChatGPT
ChatGPT

1. 条件分岐(if文)

条件に応じて異なる処理を行うために使用します。

解説:

  • if で条件を指定し、その条件が真の場合に実行する処理を書きます。
  • elif は「else if」の略で、最初の if が偽の場合に次の条件をチェックします。
  • else はすべての条件が偽の場合に実行する処理を書きます。

2. ループ(for文、while文)

ループを使って、同じ処理を繰り返し実行することができます。

例(for文):

解説:

  • for ループは、シーケンス(リスト、タプル、文字列など)の各要素を順番に取り出して処理します。

例(while文):

解説:
  • while ループは、指定した条件が真の間、繰り返し処理を行います。

練習問題

練習問題

  1. 自分の年齢を変数に代入し、条件分岐を使って「未成年」「成人」「高齢者」を判定するプログラムを書いてみましょう。
  2. 好きな果物のリストを作成し、for ループを使って各果物の名前を出力するプログラムを書いてみましょう。
  3. while ループを使って、1から10までの数を出力するプログラムを書いてみましょう。

ということで、練習問題をやっていきましょう!!
実際にChatGPTに教えて貰った内容を参考にしながらコードを書いていきます。

練習問題1

自分の年齢を変数に代入し、条件分岐を使って「未成年」「成人」「高齢者」を判定するプログラムを書いてみましょう。

出力

変数のageを変えても、問題なく出力されるので大丈夫でした

ChatGPTが教えてくれていた内容を参考にしながら書いてみました!!
ポイントは、日本語で書かれている部分をあえて英語にしたところでしょうか😆

練習問題2

好きな果物のリストを作成し、for ループを使って各果物の名前を出力するプログラムを書いてみましょう。

出力

まさかのリスト内容が反映されていない状態でした😱
ChatGPTにどこが間違えていたのか聴いてみます。

ChatGPTで修正方法

ダダ
ダダ

fruit_list = ["apple", "orange", "grape", "pear"]

for fruit in fruit_list:
print("fruit")
リストの内容が出力できませんでした

ChatGPT
ChatGPT

リストの内容を出力するためには、ループ内で文字列ではなくリストの要素を出力する必要があります。以下のように修正してください。

このコードでは、fruitという変数がリストの各要素を順番に受け取り、それをprint関数で出力します。これにより、リストの内容が正しく出力されます。

コードを修正してくれて、問題は解決しました。
しかし、どこが間違えていたかわからないのでChatGPTに聴いてみました

ダダ
ダダ

間違えていた部分を教えて

ChatGPT
ChatGPT

間違えていた部分は以下の部分です。

この部分は文字列 "fruit" をそのまま出力しています。リストの各要素を出力するためには、変数 fruit を出力する必要があります。修正後のコードは以下の通りです。

この修正により、リストの各要素("apple", "orange", "grape", "pear")が順番に出力されます。

どこが間違えていたかを、丁寧に教えてくれるのでどこが間違えていたかをしっかりと確認してみましょう😊

練習問題3

while ループを使って、1から10までの数を出力するプログラムを書いてみましょう。

出力

無事練習問題終了です!!

制御構文は、プログラムの流れを制御するための重要な要素です。
Pythonでは、条件に応じた処理を行うif文、繰り返し処理を行うfor文とwhile文が主要な制御構文として使われます。if文は条件によって異なるコードを実行し、for文は指定されたシーケンスの各要素に対して処理を行い、while文は条件が真である間、処理を繰り返します。制御構文を効果的に使うことで、プログラムの柔軟性と効率を高めることができます。

Pythonのfor文で使われる「シーケンス」という言葉は、複数の要素が順序付けられて並んでいるデータ構造を指します。

ステップ4: 関数とモジュール

ダダ
ダダ

練習問題も無事に終わりました。
次のステップへお願いいたします。

ChatGPT
ChatGPT

1. 関数

関数は、特定のタスクを実行するためにまとめられたコードのブロックです。関数を使うことで、コードを再利用しやすくし、可読性を向上させることができます。

関数の定義と呼び出し

出力

解説:

  • def キーワードを使って関数を定義します。
  • 関数名の後にカッコを付け、必要な引数を指定します。
  • 関数を呼び出すときは、関数名に引数を渡します。

2. モジュール

モジュールは、関連する関数や変数をまとめたPythonファイルです。モジュールを使うことで、コードを整理しやすくし、他のプログラムから簡単に再利用できます。

モジュールのインポート

出力

解説:

  • import キーワードを使ってモジュールをインポートします。
  • インポートしたモジュールの関数や変数を使うには、モジュール名.関数名 の形式を使用します。

練習問題

練習問題

  1. 名前を受け取り、「こんにちは、[名前]さん!」と出力する関数を作成してみましょう。
  2. 2つの数を受け取り、それらの和を返す関数を作成してみましょう。
  3. math モジュールを使って、任意の数の平方根を計算するプログラムを書いてみましょう。
  4. 自分で新しいモジュール(my_module.pyなど)を作成し、その中に関数を定義してインポートしてみましょう。

練習問題1

名前を受け取り、「こんにちは、[名前]さん!」と出力する関数を作成してみましょう。

出力

関数を作ると、関数で設定した名前を呼び出すだけで、簡単にプログラムを出力することができました!
今は、関数の中身が簡単なのでprint関数を使用して出力をする方が早いかもしれませんが、内容が複雑になってくると関数というパーツを作っておくと便利そうですね!!

練習問題2

2つの数を受け取り、それらの和を返す関数を作成してみましょう。

出力

関数内に2つのデータをいれることができました!!
","を使ってデータを2つ入力ができるようになりました。

練習問題3

math モジュールを使って、任意の数の平方根を計算するプログラムを書いてみましょう。

出力

中学生のときに習ったやつ😆
ひとよひとよにひとみごろ。。。懐かしい

練習問題4

自分で新しいモジュール(my_module.pyなど)を作成し、その中に関数を定義してインポートしてみましょう。

この問題は、モジュールを自分で作成して、それを出力しましょうと言う内容のものでした!!
いまいち、モジュールの作り方がわかっていなかったので、ChatGPT先生に聴いてみました。

ダダ
ダダ

自分で新しいモジュール(my_module.pyなど)を作成し、その中に関数を定義してインポートしてみましょう。
この問題がわからない

ChatGPT
ChatGPT

モジュールの作成と使用手順

1. モジュールファイルを作成する

まず、Pythonファイル(例えば my_module.py)を作成し、その中に関数を定義します。

  1. 任意のテキストエディタ(VSCodeやNotepadなど)を開き、新しいファイルを作成します。
  2. ファイル名を my_module.py として保存します。
  3. 以下のように関数を定義します。

モジュールを作るときはprintよりteturnの方が良さそう

2. モジュールをインポートして使う

次に、作成したモジュールをPythonスクリプトからインポートして使用します。

  1. 新しいPythonファイルを作成します(例えば main.py)。
  2. my_module をインポートして関数を呼び出します。

3. スクリプトを実行する

コマンドプロンプトやターミナルを開き、main.py が保存されているディレクトリに移動して、次のコマンドを実行します。

この内容を実行してもできない場合は、ファイルの保存をすると私はできました。
ファイルの内容を変更して、保存をしていないとエラーの原因となるようです。

解説

  • モジュールファイル (my_module.py):
    • Pythonコードを含むファイルで、複数の関数や変数を定義できます。
    • 他のスクリプトからインポートして使用できるようになります。
  • インポート:
    • import モジュール名 を使って、モジュール内の関数や変数を利用します。
    • モジュール名.関数名 の形式で関数を呼び出します。

内容を確認しながらやってみました。

この内容で無事にできました!
これで、なんとなく関数とモジュールについて理解することができました!!

まとめ

今回は、「制御構文と関数とモジュールについて」までをやっていきました。
今回は、関数とモジュールの部分で私はつまずきましたが、ChatGPTに自分がわからに部分を聞くことで、丁寧に修正をしてくれます。
またエラー文が出た場合でも、エラーの内容をコピーしてそのまま貼り付けて聞くことで、エラーの内容を説明してくれるので原因がすぐに分かります。
私が、以前やっていたときもエラーに何が書かれているかわからなくて凄く時間がかかった記憶があり、エラーが出るたびにイライラしていることも多くありましたが、エラーの内容も説明してくれるので、そのあたりのストレスはなくなりました😁

もしわからないことがあれば、このブログやXに質問等を投げていただければと思います。また、コミュニティもやっっているのでそちらから質問を投げていただいても大丈夫ですよ!!

Xのアカウントはこちら

ダダのアカウント

Discordコミュニティ

ハピッツカフェ

プログラミングを視覚的に理解したい方やプログラミングで絵を書いてみたい方はUdemyで講座も作っているのでこちらも参考にしてみてください

Udemy講座

Processing Python講座

ChatGPTでPythonの学習を始めてみたい方は以下の記事を参考にしてみてください

ChatGPTはプログラミングの学習はできても、人のつながりまでは作ってくれません。
プログラミングの学習だけではなく、人との繋がりを作ってくれるスクールもオススメです。
気になる方は無料相談からでも体験してみてください!!

テックアカデミー無料メンター相談

次はファイル操作と実践的なプロジェクトを進めていきます!!

-ChatGTP, スキルアップ, プログラミング学習
-, , , , ,