- #coding =utf-8
- #/usr/bin/env python
- Import xlsxwriter,xlrd
- Import sys,os.path
- fname = ' zm6.xlsx '
- If not os.path.isfile (fname):
- print u ' file path does not exist '
- sys.exit ()
- data = Xlrd.open_workbook (fname) # open fname file
- Data.sheet_names () # Get the name of all sheet in the XLS file
- Table = Data.sheet_by_index (0) # get an xls file by index No. 0 sheet
- nrows = table.nrows # Gets the row number of the table sheet
- Ncols = Table.ncols # Gets the total number of columns in the table worksheet
- Workbook = Xlsxwriter. Workbook (' zm6.xlsx ') #创建一个excel文件
- Worksheet = Workbook.add_worksheet () #创建一个工作表对象
- Worksheet.set_column (0,ncols,22) #设定列的宽度为22像素
- #border: border, align: alignment, bg_color: background color, font_size: font size, bold: font Bold
- top = Workbook.add_format ({' border ': 1, ' align ': ' center ', ' bg_color ': ' cccccc ', ' font_size ': ' bold ':True})
- Green = Workbook.add_format ({' border ': 1, ' align ': ' center ', ' bg_color ': ' green ', ' font_size ': 12})
- Yellow = Workbook.add_format ({' border ': 1, ' Bg_color ': ' yellow ', ' font_size ': 12})
- Red = Workbook.add_format ({' border ': 1, ' align ': ' center ', ' bg_color ': ' red ', ' font_size ': 12})
- blank = Workbook.add_format ({' Border ': 1})
- For i in xrange (nrows):
- Worksheet.set_row (i,22) #设定第i行单元格属性, height 22 pixels, row index starting from 0
- for J in xrange (ncols):
- Cell_value = Table.cell_value (i,j,) #获取第i行中第j列的值
- if i = = 0:
- Format = Top
- elif i = = 3 or i = = 6:
- format = Blank
- else:
- if J = = 0 or J = = 2:
- Format = Yellow
- elif J = = 1:
- format = Red
- elif J = = 3:
- Format = Green
- Green.set_num_format (' yyyy-mm-dd ') #设置时间格式
- Worksheet. Write (i,j,cell_value,format) #把获取到的值写入文件对应的行列
- Format.set_align (' vcenter ') #设置单元格垂直对齐
- Workbook. Close ()
Python calls Xlrd&xlsxwirter