日韩黑丝制服一区视频播放|日韩欧美人妻丝袜视频在线观看|九九影院一级蜜桃|亚洲中文在线导航|青草草视频在线观看|婷婷五月色伊人网站|日本一区二区在线|国产AV一二三四区毛片|正在播放久草视频|亚洲色图精品一区

分享

Python中利用openpyxl讀取Excel文件

 糖糖落 2019-03-28
  1. 讀取excel文件需用到openpyxl,python中可直接安裝,方法如下:

    方法1:進入cmd命令進入所在工程下Scripts中執(zhí)行:pip install openpyxl

    方法2:利用pycharm進入setting中,如圖所示:


  2. excel文件如下:需要將學生的成績信息讀出來

  3. 代碼如下:

    #coding=utf-8
    import openpyxl
    '''
    如果只是importopenpyxl,直接用openpyxl.load_wordbook,
    如果直接from...import..可以直接用load_workbook
    from openpyxl import workbook
    from openpyxl import load_workbook
    from openpyxl.writer.excel import ExcelWriter
    '''
    wb = openpyxl.load_workbook(r'C:\Users\user\Desktop\學生成績表.xlsx') #excel
    sheetnames = wb.get_sheet_names() #獲取sheetname
    print('該表格共有%dsheet格分別為:%s'%(len(sheetnames),sheetnames))

    for k in range(0, len(sheetnames)):
    ws = wb.get_sheet_by_name(sheetnames[k]) #獲取sheet中的數(shù)據(jù)

    rows = ws.max_row #獲取該sheet中行數(shù)最大的值
    columns = ws.max_column #獲取該sheet中列數(shù)最大的值
    if rows-1 == 0 and columns-1 == 0: #sheet中的行數(shù)列數(shù)為空時不打印。
    break
    else:
    print(' loading...正在打印第%dsheet數(shù)據(jù)...' % (k+1))
    print('此為第%dsheet,共有%d行,%d' % (k+1, rows-1, columns))

    for i in range(3, rows+1):
    #遍歷sheet中的值
    core_list = []
    for j in range(1, columns+1):
    str = ws.cell(i, j).value
    core_list.append(str)

                print(core_list) #其他功能自己拓展,怎么取值。之類的。。。

  4. 注意事項(一定要注意注意注意!!!!!!!)

    ①openpyxl.load_workbook(r'C:\Users\user\Desktop\學生成績表.xlsx')中要加r,要不然會報錯:SyntaxError: (unicode error) 'unicodeescape' codec can't decode bytes in position 2-3: truncated \UXXXXXXXX esc 這個是由于轉義符影響的,報錯的具體信息可以自己查看

    ②遍歷時注意for的邊界值,如果rows和columns不加1,最后一列和最后一行遍歷不到容易丟失數(shù)據(jù)。

    ③可以遍歷不同的sheet取值,方法相同類似,包括擴展怎么取值,取值以后如何展示,這個看自己的需求。

  5. 最后的最后,讀出來的數(shù)據(jù)如圖:

    轉藏 分享 獻花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多