python-寫入excel(xlswriter)

 1、安裝xlrd模塊:python

一、mac下打開終端輸入命令:函數

pip install XlsxWriter

二、驗證安裝是否成功:字體

  • 在mac終端輸入 python  進入python環境
  • 而後輸入 import xlswriter

  不報錯說明模塊安裝成功url

 

2、經常使用方法:spa

一、建立excel文件excel

# 建立文件
workbook = xlsxwriter.Workbook("new_excel.xlsx"

 

二、建立sheetcode

# 建立sheet
worksheet = workbook.add_worksheet("first_sheet"

 

三、特定單元格里寫入數據orm

a) 寫入文本blog

# 法一:
worksheet.write('A1', 'write something')
# 法二:
worksheet.write(1, 0, 'hello world')

b)寫入數字圖片

# 寫入數字
worksheet.write(0, 1, 32)
worksheet.write(1, 1, 32.3)

c)寫入函數

worksheet.write(2, 1, '=sum(B1:B2)')

d)寫入圖片

# 插入圖片
worksheet.insert_image(0, 5, 'test.png')
worksheet.insert_image(0, 5, 'test.png', {'url': 'http://httpbin.org/'})

e)寫入日期:

# 寫入日期
d = workbook.add_format({'num_format': 'yyyy-mm-dd'})
worksheet.write(0, 2, datetime.datetime.strptime('2017-09-13', '%Y-%m-%d'), d)

f)設置行、列屬性

# 設置行屬性,行高設置爲40
worksheet.set_row(0, 40)

# 設置列屬性,把A到B列寬設置爲20
worksheet.set_column('A:B', 20)

 

四、自定義格式:

經常使用格式:

  • 字體顏色:color
  • 字體加粗:bold
  • 字體大小:font_site
  • 日期格式:num_format
  • 超連接:url
  • 下劃線設置:underline
  • 單元格顏色:bg_color
  • 邊框:border
  • 對齊方式:align
# 自定義格式
f = workbook.add_format({'border': 1, 'font_size': 13, 'bold': True, 'align': 'center','bg_color': 'cccccc'})
worksheet.write('A3', "python excel", f)
worksheet.set_row(0, 40, f)
worksheet.set_column('A:E', 20, f)

 

五、批量往單元格寫入數據

# 批量往單元格寫入數據
worksheet.write_column('A15', [1, 2, 3, 4, 5])  # 列寫入,從A15開始
worksheet.write_row('A12', [6, 7, 8, 9])        # 行寫入,從A12開始

 

六、合併單元格寫入

# 合併單元格寫入
worksheet.merge_range(7,5, 11, 8, 'merge_range')

 

七、關閉文件

workbook.close()

 

八、生成圖表:

xlswriter還能夠用來生成圖表,這一部份內容也比較多,下一節單獨介紹。

 

示例:

# -*- coding:utf-8 -*-

import xlsxwriter

workbook = xlsxwriter.Workbook("data.xlsx")
worksheet = workbook.add_worksheet()

data = (
    ['kobe', 5000],
    ['T-Mac', 3000],
    ['Jordan', 6000],
    ['James', 5000],
)

f = workbook.add_format({'bold': True, 'bg_color': 'yellow'})

worksheet.write(0, 0, 'name', f)
worksheet.write(0, 1, 'price', f)

row = 1
col = 0

for item, cost in data:
    worksheet.write(row, col, item)
    worksheet.write(row, col+1, cost)
    row += 1

workbook.close()

 

 

 

參考官網:http://xlsxwriter.readthedocs.io/ 

相關文章
相關標籤/搜索