ChatGPTソラ先生と学ぶ!初心者のためのAI入門講座【第48回】ChatGPTでPythonを学ぶ方法|計算・繰り返し処理・CSVデータ整理を実践しよう
こんにちは、ソラ先生です。
前回は、HTML・CSS・JavaScriptを使って、簡単なホームページを作成し、コードの意味やエラーの確認方法を学びました。
今回は「Python(パイソン)」というプログラミング言語に挑戦します。
「Pythonという名前を聞くけれど、何に使うの?」
「プログラミングの知識がなくても学べる?」
「ChatGPTにプログラムを作ってもらえるの?」
「Excelのようなデータ処理にも使える?」
そんな疑問を、一つずつ解決していきましょう。
Pythonは、計算、データ分析、業務の自動化、AIの開発など、さまざまな分野で使われているプログラミング言語です。
今回は、ChatGPTに先生になってもらいながら、小さなプログラムを動かし、その仕組みを理解していきます。
1.Pythonとは何でしょうか?
Pythonは、比較的読みやすい文法が特徴のプログラミング言語です。
例えば、画面に「こんにちは」と表示するプログラムは、次のように書けます。
print("こんにちは")
print()は、文字や計算結果などを表示するための機能です。
このコードを実行すると、
こんにちは
と表示されます。
短いコードですが、これも立派なプログラムです。
もちろん、実際に複雑なシステムを開発するには、さらに多くの知識が必要です。
しかし、最初から難しい処理に挑戦する必要はありません。
まずは、プログラムを書き、動かし、結果を確認する経験を積んでいきましょう。
2.Pythonはどんな仕事に使えるの?
Pythonは、さまざまな作業に利用できます。
例えば、次のような用途です。
① 計算処理
売上金額や数量、平均値などを計算できます。
② データの整理
大量の数字や文字情報を、決めた条件に従って整理できます。
③ 繰り返し作業の自動化
同じ処理を何度も実行するプログラムを作成できます。
④ グラフ作成
集計した数字をグラフにして、変化や違いを確認できます。
⑤ ファイル処理
CSVなどのデータファイルを読み込み、必要な情報を取り出せます。
ただし、Pythonを使えば、どのような仕事でも自動化できるわけではありません。
実際の業務では、データの形式、利用するシステム、情報管理、操作権限などを確認する必要があります。
3.ChatGPTとPythonはどう関係しているの?
ChatGPTには、Pythonコードの作成や説明を依頼できます。
例えば、
「Pythonで1から10までの数字を合計するプログラムを作成してください。初心者にも分かるように一行ずつ説明してください」
と質問できます。
さらに、ChatGPTの対応するデータ分析機能では、Pythonのコードを実際に実行して計算やデータ処理を行える場合があります。
OpenAIの公式資料でも、ChatGPTのデータ分析にPythonが利用されることが説明されています。
ただし、ChatGPTにPythonのコードを書いてもらうことと、自分のパソコンにPythonをインストールして実行することは別です。
まずはChatGPTにコードの意味を教えてもらい、対応する実行機能が使える場合は、結果も確認してみましょう。
4.Pythonで計算してみよう
最初は、簡単な計算です。
例えば、商品を10個販売し、単価が250円だったとします。
売上金額は、
10×250=2,500円
です。
Pythonでは、次のように書けます。
print(10 * 250)
実行結果は、
2500
となります。
Pythonでは、掛け算に*、割り算に/という記号を使用します。
例えば、次のような計算もできます。
print(100 + 50)
print(100 - 50)
print(100 * 5)
print(100 / 5)
実行すると、順番に150、50、500、20.0と表示されます。
ここで、割り算の結果が20.0となることに注目してください。
Pythonでは、通常の/による割り算の結果は、小数を扱う数値として表されます。
ChatGPTには、
「Pythonの足し算、引き算、掛け算、割り算の記号について、具体例を使って説明してください」
と質問してみましょう。
5.変数とは何でしょうか?
次に「変数」という考え方を学びます。
変数とは、プログラムの中で数値や文字などの情報に名前を付けて扱う仕組みです。
例えば、次のコードです。
quantity = 10
price = 250
total = quantity * price
print(total)
ここでは、
quantityは数量、
priceは単価、
totalは計算した金額です。
実行結果は2,500になります。
この方法なら、数量や単価を変更して、同じ計算を繰り返せます。
例えば、
quantity = 20
price = 250
に変更すれば、売上金額は5,000円になります。
ChatGPTには、
「このPythonコードについて、変数がどのような役割をしているのか、Excelのセルと比較しながら説明してください」
と質問できます。
ただし、変数とExcelのセルは完全に同じ仕組みではありません。
最初は、値に名前を付けて計算できるという点を理解しましょう。
6.複数の商品の売上を計算しよう
次は、少しだけ実務に近い例です。
3つの商品について、数量と単価が決まっているとします。
| 商品 | 数量 | 単価 |
|---|---|---|
| ノート | 10 | 200円 |
| ペン | 20 | 150円 |
| ファイル | 5 | 400円 |
Pythonでは、次のように計算できます。
note = 10 * 200
pen = 20 * 150
file = 5 * 400
total = note + pen + file
print(total)
実行結果は、
7000
です。
ノートが2,000円、ペンが3,000円、ファイルが2,000円。
合計7,000円です。
ここで重要なのは、実行結果が正しいか確認することです。
プログラムがエラーなく動いたとしても、数量や単価が間違っていれば、計算結果も間違います。
7.繰り返し処理とは何でしょうか?
Pythonの便利な特徴の一つが、同じ処理を繰り返し実行できることです。
例えば、次のコードを見てください。
for number in range(1, 6):
print(number)
実行結果は次のようになります。
1
2
3
4
5
forは、繰り返し処理を行うための構文です。
range(1, 6)は、1から5までの整数を順番に扱うための指定です。
ここで注意したいのは、最後に指定した6は含まれないことです。
また、print(number)の前に空白が入っています。
Pythonでは、このような字下げを「インデント」と呼び、処理のまとまりを表すために使用します。
インデントが正しくないと、エラーになることがあります。
8.繰り返し処理で合計を計算する
今度は、5つの売上金額を合計してみましょう。
例えば、
2,000円、3,000円、2,800円、2,700円、3,000円
というデータです。
次のコードを使います。
sales = [2000, 3000, 2800, 2700, 3000]
total = 0
for amount in sales:
total = total + amount
print(total)
実行結果は、
13500
です。
salesには5つの売上金額が入っています。
角かっこで囲まれたデータの集まりを、Pythonでは「リスト」と呼びます。
forで金額を一つずつ取り出し、totalへ加算しています。
なお、この計算だけなら、Pythonのsum()という機能を使って短く書くこともできます。
print(sum(sales))
こちらも13,500と表示されます。
同じ結果を得る場合でも、複数の書き方があるのです。
9.条件によって処理を変える方法
次に「if文」を紹介します。
if文は、条件によって処理を変えるための仕組みです。
例えば、在庫数量が10個以下になったら、発注の確認を促すプログラムを考えます。
stock = 8
if stock <= 10:
print("発注を確認してください")
else:
print("在庫があります")
この場合、在庫数量は8なので、
発注を確認してください
と表示されます。
<=は「以下」を表します。
elseは、最初の条件が成立しなかった場合の処理です。
ただし、実際の在庫管理で、10個以下なら必ず発注すべきとは限りません。
発注点は、販売数量、仕入れ納期、安全在庫などを考慮して決める必要があります。
プログラムは決められた条件に従って動きますが、その条件が適切かどうかは人間が判断する必要があります。
10.CSVファイルとは何でしょうか?
ここからは、仕事でも役立つデータ処理を学びましょう。
CSVとは「Comma-Separated Values」の略で、データをカンマなどで区切って保存するテキスト形式です。
例えば、次のようなデータです。
商品名,数量,単価
ノート,10,200
ペン,20,150
ファイル,5,400
これは商品名、数量、単価を記録したCSVデータです。
ExcelでもCSVファイルを開いたり、保存したりできます。
ただし、CSVにはExcelのような複雑な書式や複数シートを保存する仕組みはありません。
主にデータそのものを受け渡すために使われます。
11.PythonでCSVを読み込んでみよう
Pythonには、CSVファイルを扱うためのcsvという標準ライブラリがあります。
まず、先ほどのデータをメモ帳へ入力し、sales.csvという名前でUTF-8形式で保存してください。
次に、同じフォルダーへ次のPythonコードを用意します。
import csv
total = 0
with open("sales.csv", encoding="utf-8", newline="") as file:
reader = csv.DictReader(file)
for row in reader:
quantity = int(row["数量"])
price = int(row["単価"])
total += quantity * price
print("売上合計:", total, "円")
実行結果は、
売上合計: 7000 円
となります。
このコードでは、CSVファイルを開き、商品ごとの数量と単価を読み込み、売上金額を合計しています。
int()は、文字として読み込まれた数字を整数に変換するために使用しています。
今回は、数量と単価がすべて整数で入力されていることを前提としています。
実際のファイルには、空欄や文字の入力間違いがある場合もあります。そのようなデータを扱うときには、追加の確認処理が必要です。
12.ChatGPTにCSVを分析してもらう方法
ここまで、Pythonのコードを使ってCSVを処理する方法を紹介しました。
しかし、ChatGPTのデータ分析機能を使えば、Pythonコードを自分で入力せずに分析できる場合があります。
例えば、ChatGPTへCSVファイルをアップロードして、
「このCSVファイルにある商品ごとの売上金額を計算し、合計を出してください。計算に使った方法も説明してください」
と依頼します。
さらに、
「今回の分析でPythonコードを実行した場合は、そのコードを表示して、各行の意味を説明してください」
と質問することもできます。
対応するデータ分析機能では、ChatGPTがPythonコードを書き、実行して結果を表示する場合があります。
ただし、すべての質問でPythonが使われるとは限りません。
また、Pythonを実行したからといって、入力データや計算条件が必ず正しいわけではありません。
結果を確認することが大切です。
13.Pythonを自分のパソコンで動かすには?
ChatGPTの中でコードについて学ぶだけでなく、自分のパソコンでPythonを実行する方法もあります。
Pythonは公式サイトから入手できます。
Windowsなどでは、公式の案内に従ってPythonの実行環境を導入できます。
ただし、インストール方法はOSやバージョンによって異なります。
また、会社のパソコンでは、ソフトウェアのインストールが制限されている場合もあります。
そのため、最初からインストールする必要はありません。
ChatGPTの対応するデータ分析機能や、利用可能な学習環境を使ってコードの動きを確かめる方法もあります。
自分のパソコンへ導入する場合は、公式資料で現在の手順を確認しましょう。
14.Pythonでエラーが出たときの調べ方
プログラムを実行すると、エラーが表示されることがあります。
例えば、次のコードです。
print(price)
しかし、priceという変数をまだ定義していなければ、NameErrorというエラーが発生します。
また、数値へ変換できない文字列にint()を使うと、ValueErrorが発生する場合があります。
こうしたエラーは、原因を調べる手がかりになります。
ChatGPTには、
「Pythonでこのエラーが発生しました。エラーメッセージの意味を説明し、原因を確認する方法を一つずつ教えてください」
と質問してみましょう。
エラーメッセージと、関係するコードを一緒に伝えると原因を絞り込みやすくなります。
ただし、コードやエラー表示に、パスワード、個人情報、秘密情報などが含まれていないか確認してください。
15.プログラムが動いても、正しいとは限らない
プログラミングでは、エラーが表示されなければ成功だと思ってしまうことがあります。
しかし、プログラムが正常に終了しても、計算内容が間違っている場合があります。
例えば、税込金額を計算したいのに、税率を間違えていた場合です。
Pythonは、指定された計算をそのまま実行します。
計算式が間違っていても、それを自動的に判断できるとは限りません。
そこで、次のことを確認しましょう。
① 入力した数字は正しいか。
② 計算式は目的に合っているか。
③ 正しい答えが分かるデータで試したか。
④ 0や空欄などの場合にも正しく動くか。
⑤ 結果を別の方法で検算できるか。
ChatGPTには、
「このPythonプログラムについて、正常に動く場合だけでなく、入力ミスや想定外のデータがある場合の問題も考えてください」
と依頼できます。
実際に仕事で使うプログラムほど、こうした確認が重要です。
16.今日のミニレッスン
今回は、Pythonで売上を計算する小さなプログラムを学びます。
ステップ① ChatGPTにコードを作ってもらう
次のように入力してください。
「Pythonで商品の数量と単価から売上金額を計算するプログラムを作成してください。初心者向けに一行ずつ説明してください」
ステップ② コードの意味を確認する
次のコードをChatGPTに見せてください。
quantity = 10
price = 250
total = quantity * price
print(total)
「このコードの各行が何をしているのか説明してください」
と質問します。
ステップ③ 数字を変更する
数量を10から20へ変更してみましょう。
正しい結果は5,000円です。
ステップ④ 複数の商品を計算する
続けて、
「ノート10冊・単価200円、ペン20本・単価150円、ファイル5冊・単価400円の売上合計を計算するPythonコードを作成してください」
と依頼します。
正しい合計は7,000円です。
ステップ⑤ 繰り返し処理を試す
「商品の数量と単価をリストにまとめ、for文を使って売上合計を計算してください。for文の意味も説明してください」
と依頼します。
ステップ⑥ CSVを使う方法を教えてもらう
「商品名、数量、単価が入ったCSVファイルをPythonで読み込み、売上合計を計算する方法を教えてください」
と質問します。
ステップ⑦ 計算結果を検算する
最後に、
「今回のプログラムで計算間違いが起こる可能性を整理し、結果を確認する方法を説明してください」
と依頼します。
これで、計算・変数・繰り返し処理・CSVの基本を一通り学べます。
ソラ先生からひとこと
Pythonは、さまざまな仕事や研究に利用されているプログラミング言語です。
しかし、最初から難しいプログラムを作る必要はありません。
簡単な計算をする。
数字に名前を付ける。
同じ処理を繰り返す。
表のデータを読み込んで整理する。
こうした小さな経験を積むことで、少しずつ仕組みを理解できるようになります。
ChatGPTは、コードを書いたり、意味を説明したり、エラーを調べたりする手助けができます。
ただし、AIが作ったコードを動かすだけでは、十分に理解したことにはなりません。
なぜその計算になるのか。
どのデータを使っているのか。
数字が変わると結果はどう変化するのか。
自分でも考え、試し、確認することが大切です。
プログラミングの目的は、難しいコードを書くことではありません。必要な処理を理解し、正確に実行できる仕組みを作ることです。
次回【第49回】は「ChatGPTで単純作業を自動化する方法|繰り返し業務・ファイル整理・作業手順の改善に挑戦」です。
次は、今回学んだPythonやChatGPTの機能を使って、日々の繰り返し作業を効率化する方法を学びましょう。