文件存储是按照每个子列表为一行的,所以在写文件时只需要将[10,'haha',0.1]换成[[10],['haha'],[0.1]]。所以只要将mywrite.writerow(i)改为mywrite.writerow([i])。
import csvimport random
from openpyxl import load_workbook
list = [5,3,1,7,4,2,6]
list_random=random.sample(list, len(list))
list_data = list_random.copy()
print("源列表:",list)
print("新列表:",list_data)
wb = load_workbook(r'D:\works\scripts\interface\test_data\test.xlsx')
sheet = wb['re']
for i in range(1,16): #行
for data1 in range(len(list)): #获取源数据的列表中内容个数
rowsCount1 = data1+1 #每次读取后+1
sheet.cell(row=rowsCount1, column=1).value = list[data1] #根据内容当前赋值给行数
for data2 in range(len(list_data)): #获取新列表中内容个数
rowsCount2 = data2 + 1 #
sheet.cell(row=rowsCount2, column=2).value = list_data[data2]
wb.save(r'D:\works\scripts\interface\test_data\test.xlsx')