Slide 1

Slide 1 text

          虎の穴 虎の穴 虎の穴 虎の穴 虎の穴 虎の穴 Python文法わからない人がchatGPT 利用して業務自動化させてみた 1 Copyright © 2022 Toranoana Inc. All Rights Reserved.

Slide 2

Slide 2 text

          虎の穴 虎の穴 虎の穴 虎の穴 虎の穴 虎の穴 2 自己紹介 S.Konishi ● 2018/7 入社のインフラエンジニア ● 虎の穴ラボ インフラエンジニア マネージャ ● 前職:メーカ・通信系 SIer、プロバイダ等 入社理由 ● 自社プロダクトのインフラ業務がしたい! ● 同人文化が好き!(C48から参加) 好きな作品など ● アイドルマスター全般 ● 声優ライブ参戦(雨宮天さん

Slide 3

Slide 3 text

          虎の穴 虎の穴 虎の穴 虎の穴 虎の穴 虎の穴 3 今回の前提環境 ・WindowsにPythonをインストールし   コンソールからバージョン情報知る   ことができる人     ・変数などの概念は他スクリプト言語などで知っていて Python の文法はわからないが     記載されているスクリプトを見たらなんとなくやってい ることがわ かる人 ・初級者向け

Slide 4

Slide 4 text

          虎の穴 虎の穴 虎の穴 虎の穴 虎の穴 虎の穴 4 ちょこっと自動化したいこと 社内で利用しているレポート xlsx ファイル を特定フォルダ配下に移動したい。     作業頻度:1か月に1回     実施内容:サードパーティwebツールから               ダウンロードできる               (部署名).xlsx が 20ファイルほどある。       部署名は、重複などはなく毎月同様のファイル名。       部署A.xlsx        部署B.xlsx …..

Slide 5

Slide 5 text

          虎の穴 虎の穴 虎の穴 虎の穴 虎の穴 虎の穴 その複数のxlsxファイルを 虎太郎部長配下フォルダ...[YYYYMMフォルダ]                           A部署.xlsx , C部署.xlsx 虎次郎部長配下フォルダ...[YYYYMMフォルダ]                           B部署.xlsx 虎三郎部長配下フォルダ...[YYYYMMフォルダ]                           A部署.xlsx, C部署.xlsx などに手動で動かしていた。。 5 ちょこっと自動化したいこと 1月フォルダ 1月フォルダ 1月フォルダ

Slide 6

Slide 6 text

          虎の穴 虎の穴 虎の穴 虎の穴 虎の穴 虎の穴 1か月に1回とはいえ 部署が多くなってきて 手動でやると時間がもったいなさすぎる! しかも、間違う!                                                                                                                                                                                     ~月分のB部署のxlsxファイルが                                             ないんだけど・・ 6 はっきりいって・・

Slide 7

Slide 7 text

          虎の穴 虎の穴 虎の穴 虎の穴 虎の穴 虎の穴 処理を考える やりたい処理は決まっているので、整理する 処理の流れ 今回はやりたいことが明確に決まっているので 自身で考える。この工程自体をAIにやらせることも できなくはない   1.処理可能かチェック       対象のxlsxファイルは存在するのか?       対象の部署フォルダは存在するのか?       部署フォルダ配下のYYYYMM フォルダは       存在するのか? 7 AIにやらせよう

Slide 8

Slide 8 text

          虎の穴 虎の穴 虎の穴 虎の穴 虎の穴 虎の穴 処理を考える   2.処理実行       対象のxlsxファイルを対象のフォルダに移動する。       ファイルが存在していれば、標準出力に状況を出力       する。       だいたいこんなところだろうか。。 8 AIにやらせよう

Slide 9

Slide 9 text

          虎の穴 虎の穴 虎の穴 虎の穴 虎の穴 虎の穴 とにかく列挙 以下をpython で出力してください。 --変数部分 移動元ファイルの場所は C:\移動元です。 移動先ファイルの場所は C:\移動先です。 --標準入力部分 YYYYMM を変数として扱い、年と月を6桁の数値で標準入力で指定できるようにしてください。 また数値以外が入力されたとき、桁が違うときは再度入力を促す処理を行ってください。 --チェック処理 チェック処理開始と標準出力してください。 カレントディレクトリにファイル:A部署.xlsx が存在しているかチェックし、あれば続行なければexit1 で終了 カレントディレクトリにファイル:B部署.xlsx が存在しているかチェックし、あれば続行なければexit1 で終了 カレントディレクトリにファイル:C部署.xlsx が存在しているかチェックし、あれば続行なければexit1 で終了 移動先フォルダの C:\ 移動先 に01_ 虎太郎部長配下 が存在しているかチェックし、あれば続行なければexit1 で終了 移動先フォルダの C:\ 移動先 に02_ 虎次郎部長配下 が存在しているかチェックし、あれば続行なければexit1 で終了 移動先フォルダの C:\ 移動先 に03_ 虎三郎部長配下 が存在しているかチェックし、あれば続行なければexit1 で終了 C:\移動先\01_虎太郎部長配下フォルダ\YYYYMM のフォルダが存在しているかチェックし、あれば続行なければYYYYMM を作成し続行 C:\移動先\02_虎次郎部長配下フォルダ\YYYYMM のフォルダが存在しているかチェックし、あれば続行なければYYYYMM を作成し続行 C:\移動先\03_虎三郎部長配下フォルダ\YYYYMM のフォルダが存在しているかチェックし、あれば続行なければYYYYMM を作成し続行 チェック処理終了と標準出力してください。 --処理部分 処理開始と標準出力してください。 C:\移動先\虎太郎部長配下フォルダ\YYYYMM のフォルダに、A部署.xlsx ,C部署.xlsx をコピーしてください。 C:\移動先\虎次郎部長配下フォルダ\YYYYMM のフォルダに、B部署.xlsx をコピーしてください。 C:\移動先\虎三郎部長配下フォルダ\YYYYMM のフォルダに、C部署.xlsx をコピーしてください。 9 処理を書く。構造化などはまかせた。

Slide 10

Slide 10 text

          虎の穴 虎の穴 虎の穴 虎の穴 虎の穴 虎の穴                             それっぽいものが                             出力されたのが                             少しながいので                             「さらにシンプルに                               できないか?」                             と聞いてみた 10 そのまま聞いてみた

Slide 11

Slide 11 text

          虎の穴 虎の穴 虎の穴 虎の穴 虎の穴 虎の穴 11 そのまま聞いてみた

Slide 12

Slide 12 text

          虎の穴 虎の穴 虎の穴 虎の穴 虎の穴 虎の穴 12 ながめてみる

Slide 13

Slide 13 text

          虎の穴 虎の穴 虎の穴 虎の穴 虎の穴 虎の穴 13 ながめてみる

Slide 14

Slide 14 text

          虎の穴 虎の穴 虎の穴 虎の穴 虎の穴 虎の穴 14 ながめてみる                           変数名が長いのがちょっと・・・ 「source_file_location と destination_file_location の変 数が長いので5文字に収めてください」

Slide 15

Slide 15 text

          虎の穴 虎の穴 虎の穴 虎の穴 虎の穴 虎の穴 15 いい感じになった

Slide 16

Slide 16 text

          虎の穴 虎の穴 虎の穴 虎の穴 虎の穴 虎の穴 16 総評 ・ファイル処理の移動処理に関しては得意そう ・実はテスト実行の段階で     YYYYMM フォルダが作成されずファイルで     つくられたり・・     コピーされていなかったり・・     もあったが、上記指摘をしたら修正も可   →1度作ってしまえば結構な時短になりました。     単純処理はどんどんまかせていきましょう。

Slide 17

Slide 17 text

          虎の穴 虎の穴 虎の穴 虎の穴 虎の穴 虎の穴 17 おわり