Python_获取excel的表格里的列数据,并从每列中随机获取一个数据,然后组合在一起。

 
import xlrd
import random
from xlutils import copy

open_excel = xlrd.open_workbook("C:\\Users\\Administrator\\Desktop\\A.xls",formatting_info=True)
get_sheet=open_excel.sheet_by_index(0)
get_row_number = get_sheet.nrows
get_col_number = get_sheet.ncols
data = []
data1 =[]
data2 =[]
data3 =[]

#获取所有列数据,并加入到列表里
for i in  range (get_col_number):
    t=get_sheet.col_values(i)
    data.append(t)

#遍历所有数据,按照列顺序排列
for j in  range (get_col_number):#遍历所有行列
    for i in range (1,get_row_number-1):
        t= data[j][i]
        data1.append(t)

#将列数据进行重新分组
for i in range (get_col_number):
    t=data1[i*(get_row_number-2):(i+1)*(get_row_number-2)]
    data2.append(t)

#随机获取每列的其中一组数据
for i in range (get_col_number):
    t =random.choice(data2[i])
    data3.append(t)
    
data4 = ''.join(data3)#将列表转为字符串

#将获取的随机数据复制到表格里
new_excel = copy.copy(open_excel)
get_new_sheet = new_excel.get_sheet(0)
get_new_sheet.write(get_row_number-1,1,data4)
new_excel.save("C:\\Users\\Administrator\\Desktop\\A.xls")
 
posted @ 2019-12-17 15:58  100天的大太阳  阅读(1156)  评论(0)    收藏  举报