溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

python對excel交互工具怎么使用

發(fā)布時間:2022-07-18 09:25:20 來源:億速云 閱讀:310 作者:iii 欄目:開發(fā)技術(shù)

這篇文章主要介紹了python對excel交互工具怎么使用的相關(guān)知識,內(nèi)容詳細易懂,操作簡單快捷,具有一定借鑒價值,相信大家閱讀完這篇python對excel交互工具怎么使用文章都會有所收獲,下面我們一起來看看吧。

    python 對excel的 讀入 與 改寫

    (對比xlwt、openpyxl、xlrd)

    python對excel交互工具怎么使用

    • xlwt不支持寫xlsx文件。

    • openpyxl不支持讀xls文件。

    • 計劃任務(wù)xlrd支持讀xls,xlsx文件。

    • 計劃任務(wù)推薦讀文件用xlrd,寫文件用openpyxl。

    #一、xlrd 讀
    # 1.引入庫& 下載庫 xlrd
    	pip install xlrd  	# 下載
    	pip show xlrd  		# 顯示版本
    	pip install xlrd==1.2.0   # 下載指定版本
    	import xlrd			# 導(dǎo)入
    	workBook = xlrd.open_workbook('D:\project\info.xls', 'rb') # 打開文件
    	workBook = xlrd.open_workbook(r'D:\project\info.xls')
        allSheetNames = workBook.sheet_names()  # 獲取所有sheet的名字(list類型)
        SheetName1= workBook.sheet_names()[0]	# 按索引號
        print(allSheetNames, SheetName1)
    #輸出:
    	['Sheet1', 'Sheet2', 'Sheet3'] Sheet1
    	# 獲取sheet內(nèi)容
    	sheet1_content1 = workBook.sheet_by_index(0) # sheet索引從0開始
    	sheet1_content2 = workBook.sheet_by_name('sheet1') # 按sheet名字獲取
    	# 獲取整行和整列的值(數(shù)組)
    	print(sheet1_content1.name,sheet1_content1.nrows,sheet1_content1.ncols)
    	# 獲取整行和整列的值(數(shù)組)
    	rows = sheet1_content1.row_values(3) # 獲取第四行內(nèi)容
    	cols = sheet1_content1.col_values(2) # 獲取第三列內(nèi)容
    	print(rows)
    	print(cols )
    	# 獲取單元格內(nèi)容(三種方式)
    	print(sheet1_content1.cell(1, 0).value)
    	print(sheet1_content1.cell_value(2, 2))
    	print(sheet1_content1.row(2)[2].value)

    二、python 寫入數(shù)據(jù)

    1 、 xlwt包寫入Excel文件

    xlwt 寫庫的局限性: 只能寫入新建的 excel。
    (寫入打開文檔 可用xlutils.copy的 copy 復(fù)制一份)
    xlwt中生成的xls文件最多能支持65536行數(shù)據(jù)

    創(chuàng)建表寫入數(shù)據(jù)
    # 向execl中 批量寫入虛假數(shù)據(jù)
    import xlwt,faker,random
    wb=xlwt.Workbook()
    sheet002=wb.add_sheet("002")
    head=["姓名","年齡","性別"]
    for h in head:
        sheet002.write(0,head.index(h),h)
        #利用for 循環(huán) 挨個寫入 數(shù)據(jù) 行,列,數(shù)據(jù)值 這里列使用下標(biāo)即可
    fake=faker.Faker()
    for i in  range(1,101):
        sheet002.write(i, 0, fake.name())
        sheet002.write(i, 1, random.randint(10,60))
        sheet002.write(i, 2, random.choice(['男','女']))
    wb.save("002.xls")

    python對excel交互工具怎么使用

    #2 復(fù)制表寫入數(shù)據(jù)
    import xlwt
    import xlrd
    import xlutils.copy
    rd = xlrd.open_workbook("Hello.xls", formatting_info = True)   # 打開文件
    wt = xlutils.copy.copy(rd)   # 復(fù)制
    sheets = wt.get_sheet(0)   # 讀取第一個工作表
    sheets.write(m, n, "I love you!")   # 向 m-1 行 n-1 列的單元格寫入內(nèi)容
    wt.save("Hi.xls")   # 保存

    2、openpyx 只可以讀xlsx 不可讀xls文檔

    xl = openpyxl.load_workbook('D:\project\infoexcel.xlsx', data_only=True)
       # 設(shè)置工作表
        sheet1 = xl.worksheets[0]
        for i in range(1, 24):
            sheet1.cell(i, 3).value = cvalue
        # 保存表格
        xl.save('D:\project\infoexcel.xlsx')

    關(guān)于“python對excel交互工具怎么使用”這篇文章的內(nèi)容就介紹到這里,感謝各位的閱讀!相信大家對“python對excel交互工具怎么使用”知識都有一定的了解,大家如果還想學(xué)習(xí)更多知識,歡迎關(guān)注億速云行業(yè)資訊頻道。

    向AI問一下細節(jié)

    免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

    AI