Python操做Excel



python操做excel主要用到xlrd和xlwt這兩個庫,即xlrd是讀excel,xlwt是寫excel的庫。可從這裏下載 https://pypi.python.org/pypi html

參考:python

https://www.cnblogs.com/zhoujie/p/python18.html 面試

http://www.cnblogs.com/snake-hand/p/3153158.html 數據庫

https://mp.weixin.qq.com/s?__biz=MzA5ODUzOTA0OQ==&mid=2651689342&idx=1&sn=1bfb56fa205decba1d821a4fec07e024&chksm=8b693238bc1ebb2e9e81bc2a370ae30f05d0ae74740993bc74c815aaacb4d991c2e7055f6e09&mpshare=1&scene=1&srcid=0109Gqxa2RAV5SCs320FQprR&key=9493c90210260ceaf9c2fb19f4aa453c320e75f00aed8b15ab95b938cc87412df051fdbf96788e408b2217ee37d9d3f1db506c48153c7677241f00de45692fd7cd97a354e8c5ec0e916c3e734023dd60&ascene=1&uin=MTk5MDM4ODY5&devicetype=Windows-QQBrowser&version=6103000b&lang=zh_CN&pass_ticket=W3PB9Gy%2F%2Fm0ucX4yyJDfLx4tmJE90pRQ3pBnrbnMvKA%3D 網絡


基本代碼:
ide

import xlwt
# workbook = xlwt.Workbook(encoding='utf-8')#建立workbook 其實就是execl,
# worksheet = workbook.add_sheet('my_worksheet') #建立表,若是想建立多個,直接在後面再add_sheet
# worksheet.write(0,0,label ='Row 0,Column 0 Value') #3個參數,第一個參數表示行,從0開始,第二個參數表示列,從0開始,第三個參數表示插入的數值
# workbook.save('./download/execl_lhr.xlsx')  #寫完記得必定要保存
def set_style(name, height, bold=False):
    style = xlwt.XFStyle()  # 初始化樣式
    font = xlwt.Font()  # 爲樣式建立字體
    font.name = name
    font.bold = bold
    font.colour_index = 2
    font.height = height
    style.font = font
    return style
#寫excel
def write_excel():
    f = xlwt.Workbook(encoding='gbk')  # 建立工做薄
    # 建立我的信息表
    sheet1 = f.add_sheet(u'我的信息', cell_overwrite_ok=True)
    rowTitle = [u'編號', u'姓名', u'性別', u'年齡']
    rowDatas = [[u'張一', u'男', u'18'], [u'李二', u'女', u'20'], [u'黃三', u'男', u'38'], [u'劉四', u'男', u'88']]
    for i in range(0,len(rowTitle)):
        sheet1.write(0,i,rowTitle[i],set_style('Times New Roman',220,True)) #後面是設置樣式
    for k in range(0,len(rowDatas)):    #先遍歷外層的集合,即每行數據
        rowDatas[k].insert(0,k+1)   #每一行數據插上編號即爲每個人插上編號
        for j in range(0,len(rowDatas[k])): #再遍歷內層集合
            sheet1.write(k+1,j,rowDatas[k][j])          #寫入數據,k+1表示先去掉標題行,另外每一行數據也會變化,j正好表示第一列數據的變化,rowdatas[k][j] 插入數據
    # 建立我的收入表
    sheet1 = f.add_sheet(u'我的收入表',cell_overwrite_ok=True)
    rowTitle2 = [u'編號',u'姓名',u'學歷',u'工資']
    rowDatas2 = [[u'張一',u'本科',u'8000'],[u'李二',u'碩士',u'10000'],[u'黃三',u'博士',u'20000'],[u'劉四',u'教授',u'50000']]
    for i in range(0,len(rowTitle2)):
        sheet1.write(0,i,rowTitle2[i])
    for k in range(0,len(rowDatas2)):    #先遍歷外層的集合
        rowDatas2[k].insert(0,k+1)   #每一行數據插上編號即爲每個人插上編號
        for j in range(0,len(rowDatas2[k])): #再遍歷內層集合
            sheet1.write(k+1,j,rowDatas2[k][j])  #寫入數據,k+1表示先去掉標題行,另外每一行數據也會變化,j正好表示第一列數據的變化,rowdatas[k][j] 插入數據
    f.save('./download/excel_write_base.xlsx')
if __name__ == '__main__':
    #generate_workbook()
    #read_excel()
    write_excel()

 


代碼2:學習

import  xlwt
def set_style(name,height,bold=False):
    style = xlwt.XFStyle()  # 初始化樣式
    font = xlwt.Font()  # 爲樣式建立字體
    font.name = name # 'Times New Roman'
    font.bold = bold
    font.color_index = 4
    font.height = height
    # borders= xlwt.Borders()
    # borders.left= 6
    # borders.right= 6
    # borders.top= 6
    # borders.bottom= 6
    style.font = font
    # style.borders = borders
    return style
#寫excel
def write_excel():
    f = xlwt.Workbook() #建立工做簿
    '''
    建立第一個sheet:
        sheet1
    '''
    sheet1 = f.add_sheet(u'sheet1',cell_overwrite_ok=True) #建立sheet
    row0 = [u'業務',u'狀態',u'北京',u'上海',u'廣州',u'深圳',u'狀態小計',u'合計']
    column0 = [u'機票',u'船票',u'火車票',u'汽車票',u'其它']
    status = [u'預訂',u'出票',u'退票',u'業務小計']
    #生成第一行
    for i in range(0,len(row0)):
        sheet1.write(0,i,row0[i],set_style('Times New Roman',220,True))
    #生成第一列和最後一列(合併4行)
    i, j = 1, 0
    while i < 4*len(column0) and j < len(column0):
        sheet1.write_merge(i,i+3,0,0,column0[j],set_style('Arial',220,True)) #第一列
        sheet1.write_merge(i,i+3,7,7) #最後一列"合計"
        i += 4
        j += 1
    sheet1.write_merge(21,21,0,1,u'合計',set_style('Times New Roman',220,True))
    #生成第二列
    i = 0
    while i < 4*len(column0):
        for j in range(0,len(status)):
            sheet1.write(j+i+1,1,status[j])
        i += 4
    f.save('./download/excel_write_merge.xlsx') #保存文件
if __name__ == '__main__':
    #generate_workbook()
    #read_excel()
    write_excel()

 



  超連接:字體

import xlwt
book = xlwt.Workbook()
sheet_index = book.add_sheet('index')
line=0
for i in range(9):
    sheet1 = book.add_sheet(str(i))
    sheet1.write(0,0,str(i))
    link = 'HYPERLINK("#%s";"%s")' % (str(i), str(i))
    sheet_index.write(line, 0, xlwt.Formula(link))
    line+=1
book.save('./download/simple2.xls')

 






About Me ui

........................................................................................................................ spa

● 本文做者:小麥苗,部份內容整理自網絡,如有侵權請聯繫小麥苗刪除

● 本文在itpub( http://blog.itpub.net/26736162 )、博客園( http://www.cnblogs.com/lhrbest )和我的weixin公衆號( xiaomaimiaolhr )上有同步更新

● 本文itpub地址: http://blog.itpub.net/26736162

● 本文博客園地址: http://www.cnblogs.com/lhrbest

● 本文pdf版、我的簡介及小麥苗雲盤地址: http://blog.itpub.net/26736162/viewspace-1624453/

● 數據庫筆試面試題庫及解答: http://blog.itpub.net/26736162/viewspace-2134706/

● DBA寶典今日頭條號地址: http://www.toutiao.com/c/user/6401772890/#mid=1564638659405826

........................................................................................................................

● QQ羣號: 230161599 (滿) 、618766405

● weixin羣:可加我weixin,我拉你們進羣,非誠勿擾

● 聯繫我請加QQ好友 646634621 ,註明添加原因

● 於 2019-01-01 06:00 ~ 2019-01-31 24:00 在魔都完成

● 最新修改時間:2019-01-01 06:00 ~ 2019-01-31 24:00

● 文章內容來源於小麥苗的學習筆記,部分整理自網絡,如有侵權或不當之處還請諒解

● 版權全部,歡迎分享本文,轉載請保留出處

........................................................................................................................

小麥苗的微店 https://weidian.com/s/793741433?wfr=c&ifr=shopdetail

小麥苗出版的數據庫類叢書 http://blog.itpub.net/26736162/viewspace-2142121/

小麥苗OCP、OCM、高可用網絡班 http://blog.itpub.net/26736162/viewspace-2148098/

小麥苗騰訊課堂主頁 https://lhr.ke.qq.com/

........................................................................................................................

使用 weixin客戶端 掃描下面的二維碼來關注小麥苗的weixin公衆號( xiaomaimiaolhr )及QQ羣(DBA寶典)、添加小麥苗weixin, 學習最實用的數據庫技術。

........................................................................................................................

歡迎與我聯繫

 

 




來自 「 ITPUB博客 」 ,連接:http://blog.itpub.net/26736162/viewspace-2375265/,如需轉載,請註明出處,不然將追究法律責任。

相關文章
相關標籤/搜索