Spring Boot 2.0深度實踐之核心技術篇 (最全)
情見程式碼:
#!/usr/bin/env python2
# -*- coding: utf-8 -*-
"""
Created on Sat Dec 2 15:40:35 2017
@author: 260207
"""
from xlutils.copy import copy
import xlrd
import xlwt
def set_style(name = 'Times New Roman',height = 6,bold=False):
# 設定單元格樣式
style = xlwt.XFStyle() # 初始化樣式
font = xlwt.Font() # 設定字型樣式
font.name = name # 字型名稱'Times New Roman'
font.bold = bold #加粗
font.color_index = 4 #顏色
font.height = height #高度
style.font = font #定義字型屬性
return style
def write_excel(bomcode ): #建立標準件模板
excel = xlwt.Workbook() #建立工作簿
import datetime
dateTime=datetime.datetime.now().strftime('%Y-%m-%d')
sheet1 = excel.add_sheet(u'標貼防錯系統',cell_overwrite_ok=True)
#生成表頭,即第一列
sheet1.write(0,0,u'訂單編碼',set_style('Times New Roman',180))
sheet1.write(0,1,u'當前時間',set_style('Times New Roman',180))
sheet1.write(0,2,u'檢測總量', set_style('Times New Roman', 180))
sheet1.write(0,3,u'出錯數量', set_style('Times New Roman', 180))
sheet1.write(0, 4, u'正確數量', set_style('Times New Roman', 180))
sheet1.write(0,5,u'合格率', set_style('Times New Roman', 180))
excel.save(file_dir+str(dateTime)+'.xls') #儲存檔案
#
def seefile(file_dir):
import os
L=[]
for root, dirs, files in os.walk(file_dir):
for file in files:
if os.path.splitext(file)[1] == '.xls':
L.append(os.path.join(root, file))
return L
def add_excel(passflag,row,error,true):
import datetime
dateTime = datetime.datetime.now().strftime('%Y-%m-%d')
nowTime = datetime.datetime.now().strftime('%H:%M:%S')
workbook = xlrd.open_workbook(file_dir+str(dateTime)+'.xls','r+')
new_excel = copy(workbook)
ws = new_excel.get_sheet(0)
ws.write(row, 0, str(bomcode), set_style('Times New Roman', 180))
ws.write(row, 1, str(nowTime), set_style('Times New Roman', 180))
if passflag == 1:
ws.write(row, 3, error+1, set_style('Times New Roman', 180))
ws.write(row, 4, true, set_style('Times New Roman', 180))
else:
ws.write(row, 4, true+1, set_style('Times New Roman', 180))
ws.write(row, 3, error, set_style('Times New Roman', 180))
ws.write(row, 2, error+true+1, set_style('Times New Roman', 180))
new_excel.save(file_dir+str(dateTime)+'.xls')
def pass_rate(row):
import datetime
dateTime = datetime.datetime.now().strftime('%Y-%m-%d')
workbook112 = xlrd.open_workbook(file_dir+str(dateTime)+'.xls','r+')
all_excel = copy(workbook112)
ws1 = all_excel.get_sheet(0)
workbook_position = workbook112.sheet_by_index(0)
all_value=workbook_position.cell(row,2).value
true_value=workbook_position.cell(row,4).value
ws1.write(row, 5, round(float(true_value)/(all_value),2), set_style('Times New Roman', 180))
all_excel.save(file_dir+str(dateTime)+'.xls')
def data_analysis(bomcode):
import datetime
dateTime = datetime.datetime.now().strftime('%Y-%m-%d')
filename = seefile(file_dir)
filename = list(reversed(filename))
#增加異常,檔名需按最新時間排列
if (filename ==[]) or (filename is None) or (dateTime!=(filename[0])[-14:-4]) :
write_excel(bomcode)
workbook = xlrd.open_workbook(file_dir+str(dateTime)+'.xls','r+')
workbook_position = workbook.sheet_by_index(0)
cols_0 = workbook_position.col_values(0)
if bomcode in cols_0:
row_error = cols_0.index(bomcode)
error=workbook_position.cell(row_error,3).value
true=workbook_position.cell(row_error,4).value
row = row_error
else :
error = 0
true = 0
row = len(cols_0)
add_excel(passflag,row,error,true)
pass_rate(row)
if __name__ == '__main__':
file_dir ='c:/Users/260207/Desktop/airfour/Data_analysis/'
bomcode='21122'
passflag =0
data_analysis(bomcode)
# add_excel(bomcode,passflag,row)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
---------------------
作者:Dawn__Z
來源:CSDN
原文:https://blog.csdn.net/Dawn__Z/article/details/85013961
版權宣告:本文為博主原創文章,轉載請附上博文連結!