Excelのリストから1行ずつ,連番テキストファイルに書き込みたい
解決したいこと
Excelのセル1行ずつ読み込み,各テキストファイルに書き込み,行数分のテキストファイルを作成したいと考えています.
参考コードとしてはこちらになります
https://gammasoft.jp/python-example/python-create-text-file-valid-users/
こちらのコードは,1つのテキストファイルにExcelの内容をすべて書き込んでいます.こちらを発展させて,Excel内のリスト1行ずつを各テキストファイルで作成したいです.
(例)
test_1.txt の中身に,Excelの1行目
test_2.txt の中身に,Excelの2行目
といったような形です.
ちなみに,下記に示すコードだと,すべてのテキストファイルにExcel1行目しか記載されずといった感じです....
該当するソースコード
import datetime
import openpyxl
for i in range(1,11):
file_path = 'C:\\Users\\XXX\\Desktop\\Auto_test\\python\\file\\test_' + str(i) + '.txt'
with open(file_path, 'w') as f:
xlsx_file = "members.xlsx"
text_file = file_path
id_list = []
now = datetime.datetime.now()
# エクセルブック
wb = openpyxl.load_workbook(xlsx_file, data_only=True)
# エクセルシート
ws = wb["Sheet1"]
# ヘッダーを除いて順番に読み込む
for row in ws.iter_rows(min_row=2):
# 会員番号
member_id = row[0].value
# 氏名
member_name = row[1].value
# 有効期限
expire_date = row[3].value
id_list.append([member_id, member_name])
# テキストファイル書き込み
for i in range(1,11):
file_path = 'C:\\Users\\XXX\\Desktop\\Auto_test\\python\\file\\test_' + str(i) + '.txt'
with open(file_path, 'w') as f:
for i in id_list:
f.write(str(i[0]) + "," + i[1] + "\n")
f.close()
コード内の「#テキストファイル書き込み」
にありますwrite文に対して,どのように記述すれば,10個作製したテキストファイルにExcel内リスト1行ずつを各テキストファイルに出力できるかが分からないのです...
python独学で始め2週間ほどなりに色々調べてみましたが,ネットにはなかなか書いておらず,,どのような記述をすれば解決できるかご教示いただければ幸いです.