[Chat GPTでPython]Chat GPTを使用してPythonプログラム作成してみた。

ホーム » プログラミング » [Chat GPTでPython]Chat GPTを使用してPythonプログラム作成してみた。

■対象者

Pythonで日頃コードを書いている方
Chat GPTを最近よく聞くけど使用したことない方
実際に業務で、使用できるか知りたい方

■作成前に

■Pythonのインストール
Python公式サイト から、インストールしたいバージョンのPythonを選択してダウンロードします。
ダウンロードしたインストーラーを実行します。この時、”Add Python to PATH”にチェックを入れることをお勧めします。
インストールが完了したら、コマンドプロンプト (Windows) やターミナル (macOS, Linux) を起動します。Pythonが正常にインストールされたかを確認するため、以下のコマンドを実行してみます。
「–version」
もし、バージョン番号が表示された場合は、Pythonのインストールが正常に完了しています。

■今回作成する際にChat GPTを使用します。
登録せずとも、大丈夫ですが始めたい方は、下記からアカウントを作成してください。
Chat GPT公式サイト

■実際に作成したいもの

今回作成したいのは下記になります。

①エクセルファイルに対象ファイルを記載する。

②特定の共有フォルダ内でファイルを検索する。
 メールアドレスをエクエルファイルに記載して、@前をファイル名として検索します。

③該当するファイルを削除する。

■作成したコード

import openpyxl
import time
import datetime
import shutil

dt_now = datetime.datetime.now()nowyeare = (dt_now.year)nowmonth = (dt_now.month-1)
print(nowyeare)print(nowmonth)
yameta_book = openpyxl.load_workbook("エクセルファイル名.xlsx")
yameta_sheet = yameta_book['シート名']

time.sleep(3)

#最大行maxrow = yameta_sheet.max_row
#最大列maxclm = yameta_sheet.max_column
#開始行startrow =yameta_sheet.min_column
#開始列startclm =yameta_sheet.min_row

s = 3i = 3print(maxrow)
yameta_adress = []
while i <= maxrow:    yameta_list =yameta_sheet.cell(row=s, column=7).value     yameta_adress.append(yameta_list)    i = i + 1    s = s + 1     print(yameta_adress)else:    print(yameta_adress)
# -----------エクセルファイルから削除するデータ取得---------------------


for taisyokusya in yameta_adress:target = '@'
try:idx = taisyokusya.find(target)
m = taisyokusya[:idx]
# スライスで@よりも前を抽出
print(m)        
dir_path = (f"Y:\\フォルダ名\\{m}")
print(dir_path)
shutil.rmtree(dir_path)
time.sleep(3)
except:pass     

作成工程

ここからは、作成するまでの流れを記載していきます。

これだと、削除するファイルはテキストファイルのみになります。
また、エクセルファイルから読み込めないため再度条件を追加します。

平凡太郎
平凡太郎

「特定のフォルダ内のファイルをエクセルから検索して削除したい Python」

で検索した結果が下記です。

ライブラリを追加したほうが効率が良いらしいので、これも追加してみましょう。

平凡太郎
平凡太郎

「特定のフォルダ内のファイルをエクセルから検索して削除したい Python 効率よく」
で検索した結果が下記です。

■最後に

いかがでしたか、今回はPythonで作成してみました。
GASの時と同じく下記を抑えると良いです。

・どういった処理を実行したいのか
 より具体的に
・言語は何にするのか
 指定せずに、○○なことがしたいけど出来る?のような聞き方でも問題ないです。
・読み込みたい列抽出したい列なども指定することができます。
 ※F列が空白の場合
  A列~E列を抽出したい、など

上記に加えて今回は改善案をChatCPT側から改善案を出してくれましたね。

平凡太郎
平凡太郎

既に作成したプログラムも、一度読み込んでもらうことで
効率よくなるかもしれないですね

[Chat GPTでGAS]Chat GPTを使用してGASを作成してみた。

[Chat GPT]Chat GPTのはじめ方・エラー解決・メリット・デメリット


タイトルとURLをコピーしました