参考代码
ChineseClean_demo1.py:
# -*- coding:utf-8 -*-
import xlrd
import xlwt
'''
python3.4
'''
# file 表示源文件名字,修改此处即可
file="./data/answer_detail_5_15307860968687.xls"
dirs="./result"
def read_excel(rows_numb,cols_numb):
f = xlwt.Workbook() #创建工作簿
'''
创建第一个sheet:
sheet1
'''
sheet1 = f.add_sheet(u'sheet1_1',cell_overwrite_ok=True) #创建sheet
sheet2 = f.add_sheet(u'sheet1_2',cell_overwrite_ok=True) #创建sheet
row0 = [u'UserNo',u'Name',u'Question',u'Answer',u'Layer',u'Mark',u'Score',u'AbilityID']
# 打开文件
workbook = xlrd.open_workbook(file)
sheet0 = workbook.sheet_by_index(0) # sheet索引从0开始
cols = sheet0.col_values(cols_numb)
rows_list_1=[]
rows_list_2=[]
for i in range(1,len(cols)):
if cols[i] == '0':
rows_list_1.append(i)
else:
rows_list_2.append(i)
for i in range(0,len(row0)):
sheet1.write(0,i,row0[i])
sheet2.write(0,i,row0[i])
'''
sheet1_1保存0分数据
'''
for j in range(0,len(rows_list_1)):
rows = sheet0.row_values(rows_list_1[j]) # 获取行内容
for i in range(0,len(rows)):
sheet1.write(j+1,i,rows[i])
'''
sheet1_2保存非0分数据
'''
for j in range(0,len(rows_list_2)):
rows = sheet0.row_values(rows_list_2[j]) # 获取行内容
for i in range(0,len(rows)):
sheet2.write(j+1,i,rows[i])
f.save('./data/demo1.xls') #保存文件
if __name__ == '__main__':
# 读取文件的行和列
rows_numb=0
cols_numb=6
read_excel(rows_numb,cols_numb)
ChineseClean_demo2.py:
# -*- coding:utf-8 -*-
import xlrd
import xlwt
'''
python3.4
'''
# file 表示源文件名字,修改此处即可
file="./data/demo1.xls"
def read_excel(rows_numb,cols_numb):
f = xlwt.Workbook() #创建工作簿
'''
创建第sheet:
'''
sheet1 = f.add_sheet(u'sheet2_1',cell_overwrite_ok=True) #创建sheet
sheet2 = f.add_sheet(u'sheet2_2',cell_overwrite_ok=True) #创建sheet
sheet3 = f.add_sheet(u'sheet2_3',cell_overwrite_ok=True) #创建sheet
sheet4 = f.add_sheet(u'sheet2_4',cell_overwrite_ok=True) #创建sheet
row0 = [u'UserNo',u'Name',u'Question',u'Answer',u'Layer',u'Mark',u'Score',u'AbilityID']
for i in range(0,len(row0)):
sheet1.write(0,i,row0[i])
sheet2.write(0,i,row0[i])
sheet3.write(0,i,row0[i])
sheet4.write(0,i,row0[i])
# 打开文件
workbook = xlrd.open_workbook(file)
sheet0 = workbook.sheet_by_index(0) # sheet索引从0开始
cols = sheet0.col_values(cols_numb) # 获取列内容
rows_list_1=[]
rows_list_2=[]
rows_list_3=[]
rows_list_4=[]
for i in range(1,len(cols)):
if float(cols[i]) < 12.0:
rows_list_1.append(i)
if float(cols[i]) >= 12.0 and float(cols[i]) < 16.0:
rows_list_2.append(i)
if float(cols[i]) >= 16.0 and float(cols[i]) < 18.0:
rows_list_3.append(i)
if float(cols[i]) >= 18.0:
print(i)
print(type(cols[i]))
exit()
rows_list_4.append(i)
'''
sheet2_1保存差,小于12分
'''
for j in range(0,len(rows_list_1)):
rows = sheet0.row_values(rows_list_1[j]) # 获取行内容
for i in range(0,len(rows)):
sheet1.write(j+1,i,rows[i])
'''
sheet2_2保存中,大于等于12,且小于16分
'''
for j in range(0,len(rows_list_2)):
rows = sheet0.row_values(rows_list_2[j]) # 获取行内容
for i in range(0,len(rows)):
sheet2.write(j+1,i,rows[i])
'''
sheet2_3保存良,大于等于16,且小于18分
'''
for j in range(0,len(rows_list_3)):
rows = sheet0.row_values(rows_list_3[j]) # 获取行内容
for i in range(0,len(rows)):
sheet3.write(j+1,i,rows[i])
'''
sheet2_4保存优,大于等于18分
'''
for j in range(0,len(rows_list_4)):
rows = sheet0.row_values(rows_list_4[j]) # 获取行内容
for i in range(0,len(rows)):
sheet4.write(j+1,i,rows[i])
f.save('./data/demo2.xls')
if __name__ == '__main__':
# 读取文件的行和列
rows_numb=0
cols_numb=6
read_excel(rows_numb,cols_numb)
ChineseClean_demo3.py:
# -*- coding:utf-8 -*-
import xlrd
import xlwt
'''
python3.4
'''
file="./data/answer_detail_5_15307860968687.xls"
def read_excel(rows_numb,cols_numb):
f = xlwt.Workbook() #创建工作簿
'''
创建第一个sheet:
sheet1
'''
sheet1 = f.add_sheet(u'sheet1',cell_overwrite_ok=True) #创建sheet
sheet2 = f.add_sheet(u'sheet2',cell_overwrite_ok=True) #创建sheet
sheet3 = f.add_sheet(u'she