概要
今回はpythonでcsvファイルを読み込んで、
フォルダを新規作成する方法について記載していきます。
勉強用に簡易的に記載していますので、ご了承ください。
実行環境
・windows:Windows11Pro 23H2
・Python 3.12.3
実行結果
まず、CSVファイルに記載します。
次に、スクリプトを実行します。
なお、第一引数は上記のCSVファイル名とします。
例)py .\tool.py .\sample.csv
実行するとbatファイルが作成され、
フォルダが新規作成されます。
※スクリプトと同じディレクトリに以下のフォルダ階層で作成されます。
○○\a\b\c
○○\d\e\f
○○\g\h\i
スクリプト
tool.py
import subprocess
import csv
import pathlib
import shutil
import sys
# CSVファイルの読み込み
csv_input_file = sys.argv[1]
list = []
with open(csv_input_file, 'r', encoding='utf-8') as csvfile:
reader = csv.reader(csvfile)
for row in reader:
list.append(row)
# \\を挿入
tmp = ['md',]
for i in list:
tmp.append('\\'.join(i))
# CSVファイルへの出力
file_name = 'data.csv'
with open(file_name, 'w',newline='') as csvfile:
writer = csv.writer(csvfile,lineterminator='\n')
writer.writerows([tmp])
# batファイルへの変換
bat_ = '.bat'
st = pathlib.PurePath(file_name).stem
file_rename = st + bat_
shutil.move(file_name,file_rename)
# batファイルの実行
subprocess.run(file_rename, shell=True, check=True,
stdout=subprocess.PIPE, stderr=subprocess.PIPE, universal_newlines=True)
参考文献