话不多说直接上代码,其中使用三个for循环的原因是因为在with as命令下file.write可以正常按序读写,因此可以使用三个for循环一次导入。
另外有试过将for循环直接定义成def但是却无法将目录下的所有文件夹一次导入了,只能导入一个,或许可以尝试将for循环内的内容def,而不是直接将整个for循环def。
import os
filePath = 'D:/新平扫/平扫系统_20201104'
filePath1 = 'D:/新平扫/平扫系统_20201106'
filePath2 = 'D:/新平扫/平扫系统_20201109'
list_data = os.listdir(filePath)
list_data1 = os.listdir(filePath1)
list_data2 = os.listdir(filePath2)
with open('data_list.txt','w+') as file:
for index, name in enumerate(list_data):
number_1 = 64 + (index * 2 ) * 64
number_2 = number_1 + 64
path = ''
log_name = path.join([name, '正面',str(number_1), '反面',str(number_2)])
file.write( log_name +'\n')
for index1, name1 in enumerate(list_data1):
if index1 > 0:
number_3 = number_2 + (index1 * 2 ) * 64
else:
number_3 = number_2 + (index1 * 2 ) * 64 + 64
# number_3 = number_2 + (index1 * 2 ) * 64
number_4 = number_3 + 64
path1 = ''
log_name1 = path1.join([name1, '正面',str(number_3), '反面',str(number_4)])
file.write( log_name1 +'\n')
for index2, name2 in enumerate(list_data2):
if index2 > 0:
number_5 = number_4 + (index2 * 2 ) * 64
else:
number_5 = number_4 + (index2 * 2 ) * 64 + 64
# number_5 = number_4 + (index2 * 2 ) * 64
number_6 = number_5 + 64
path2 = ''
log_name2 = path2.join([name2, '正面',str(number_5), '反面',str(number_6)])
file.write( log_name2 +'\n')