婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 知識庫 > 解決使用openpyxl時遇到的坑

解決使用openpyxl時遇到的坑

熱門標簽:電銷機器人 金倫通信 北京外呼電銷機器人招商 鄭州智能外呼系統中心 賓館能在百度地圖標注嗎 云南地圖標注 南京crm外呼系統排名 汕頭電商外呼系統供應商 400電話 申請 條件 crm電銷機器人

最近在用python處理Excel表格是遇到了一些問題

1, xlwt最多只能寫入65536行數據, 所以在處理大批量數據的時候沒法使用

2, openpyxl 這個庫, 在使用的時候一直報錯, 看下面代碼

from openpyxl import Workbook
import datetime

wb = Workbook()
ws = wb.active 
ws['A1'] = 42 
ws.append([1,2,3]) 
ws['A2'] = datetime.datetime.now()
wb.save('test.xlsx')

報錯信息如下

File "src\lxml\serializer.pxi", line 1652, in lxml.etree._IncrementalFileWriter.write TypeError: got invalid input value of type class 'xml.etree.ElementTree.Element'>, expected string or Element

有沒有人知道是什么原因呀? 惆悵!!!

got invalid input value of type class ‘xml.etree.ElementTree.Element'>, expected string or Element

填坑:

出現這個問題好久了, 不知道怎么解決, 也去google 和baidu搜索, 一篇文章提到了可能是包沖突的問題, 抱著試一試的心態, 沒想到解決了

lxml 這個包和openpyxl 起沖突, 解決辦法, 先卸掉lxml

pip uninstall lxml

最后運行上面處理excel的代碼, 運行成功, 無錯誤!!! 困擾了我很長時間的問題得以解決!!!

還有另一種方法:

由于lxml 包經常要用到, 所以每次卸載掉再安裝實在是麻煩, 所以我有下面的想法

例如下面的代碼, 從數據庫中取數據存入表格

import pymysql
import pandas as pd
from sqlalchemy import create_engine

engine = create_engine("mysql+pymysql://user:password@ip:port/database",encoding='utf-8')

sql = """SELECT catalog_1 as '目錄一',catalog_2 as '目錄二',catagory as '目錄三',
    region as '區域',year as '年份',data as '數據',unit as '單位' from table
    where catalog_1 = "農業" limit 100
"""
df = pd.read_sql_query(sql, con=engine)


# writer = pd.ExcelWriter(r'C:\Users\Administrator\Desktop\test.xlsx')
# df.to_excel(writer)
# writer.save()

這時候, 我們不選擇to_excel() 這個函數, 而是選擇使用to_csv() ; 即可避免openpyxl 和lxml 的沖突

df.to_csv(r'C:\Users\Administrator\Desktop\test.csv',index=False)
# 經過驗證, 此種方法是行得通的

最后得到的csv 文件用Excel 可以直接打開, 也可以另存為*.xlsx文件

最終解決辦法

今天發現我使用的openpyxl版本是3.0.2, 卸載此版本, 安裝3.0.0版本

最新更新于2020-3-16, 經過測試, 此報錯解除!

補充:Python—使用Openpyxl的dataframe_to_rows的一個小坑

這個坑說大不大,說小遇到了也頭疼。

一般我們把dataframe直接寫到Excel文件,直接 df.to_excel即可。不過如果想把多個表格寫入同一個工作表呢,那就需要用openpyxl的dataframe_to_rows功能。

看下面一段代碼。

import pandas as pd
from openpyxl import Workbook
from openpyxl.utils.dataframe import dataframe_to_rows
df1=pd.DataFrame([[1,4],[2,5],[3,6]] ,index=['a','b','c'],columns=['a','b'])
df2=pd.DataFrame([[1,4],[2,5],[3,6],[7,8]] ,index=['d','e','f','g'],columns=['a','b'])
wb=Workbook()
ws=wb.active #打開工作表
#把df1寫入工作表
for row in dataframe_to_rows(df1):
 ws.append(row)
#換行
ws.append([])
#把df2寫入工作表
for row in dataframe_to_rows(df2):
 ws.append(row)
wb.save('text.xlsx')

這段代碼就是把df1,df2都寫入到一個工作表,但一看結果,傻了,怎么標題行和內容之間多了空行啊

看看空行是如何產生的呢

原來多了一個None啊,難怪是空行,目測None是index帶來的,那就把index去掉唄

這回None是沒有了,但是index的內容也想要顯示,怎么辦呢,這么辦:

哈哈,這樣就完美了。這里reset_index的意思就是把index列,變成普通列,比如:

如上圖,如果直接reset_index,index列變成普通列,但是列頭自動變成了index,這可不好,所以先給index列賦值,也就是df1.index.name=‘code'

最后代碼如下

import pandas as pd
from openpyxl import Workbook
from openpyxl.utils.dataframe import dataframe_to_rows
df1=pd.DataFrame([[1,4],[2,5],[3,6]] ,index=['a','b','c'],columns=['a','b'])
df2=pd.DataFrame([[1,4],[2,5],[3,6],[7,8]] ,index=['d','e','f','g'],columns=['a','b'])
wb=Workbook()
ws=wb.active #打開工作表
df1.index.name='code1'
df2.index.name='code2'
#把df1寫入工作表
for row in dataframe_to_rows(df1.reset_index(),index=False):
 ws.append(row)
#換行
ws.append([])
#把df2寫入工作表
for row in dataframe_to_rows(df2.reset_index(),index=False):
 ws.append(row)
wb.save('text.xlsx')

結果,哈哈,完美

以上為個人經驗,希望能給大家一個參考,也希望大家多多支持腳本之家。如有錯誤或未考慮完全的地方,望不吝賜教。

您可能感興趣的文章:
  • 淺談openpyxl庫,遇到批量合并單元格的問題
  • python openpyxl 帶格式復制表格的實現
  • python openpyxl篩選某些列的操作
  • python中openpyxl和xlsxwriter對Excel的操作方法
  • 詳解Python openpyxl庫的基本應用
  • python openpyxl模塊的使用詳解
  • Python openpyxl 無法保存文件的解決方案

標簽:西寧 梅州 錫林郭勒盟 石家莊 文山 昆明 懷化 浙江

巨人網絡通訊聲明:本文標題《解決使用openpyxl時遇到的坑》,本文關鍵詞  解決,使用,openpyxl,時,遇到,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《解決使用openpyxl時遇到的坑》相關的同類信息!
  • 本頁收集關于解決使用openpyxl時遇到的坑的相關信息資訊供網民參考!
  • 推薦文章
    婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av
    日本不卡123| 欧美精品xxxxbbbb| 91影院在线免费观看| 欧美丝袜自拍制服另类| 一区二区三区免费看视频| av爱爱亚洲一区| 日韩欧美亚洲国产精品字幕久久久| 国产视频一区二区在线观看| 国产一区三区三区| 国产精品少妇自拍| 一本久道中文字幕精品亚洲嫩 | 日韩美女视频一区二区在线观看| 视频一区欧美日韩| 91视频在线看| 亚洲成人精品一区| 26uuu久久综合| 日韩电影在线免费看| 91女神在线视频| 日欧美一区二区| 精品处破学生在线二十三| 大白屁股一区二区视频| 日韩一区二区影院| 岛国一区二区在线观看| 精品盗摄一区二区三区| 99久久久国产精品免费蜜臀| 亚洲国产精品久久人人爱蜜臀 | 91丝袜美腿高跟国产极品老师 | 麻豆国产一区二区| 欧美影院午夜播放| 久久99热99| 国产精品伦一区| 欧美高清精品3d| 99久久国产综合色|国产精品| 精品国产乱码久久久久久蜜臀| 成人午夜视频福利| 丝袜亚洲精品中文字幕一区| 色一区在线观看| 久久精品国产第一区二区三区| 国产精品久线在线观看| 国产99久久久久| 亚洲一区二区av电影| 在线视频你懂得一区二区三区| 男女男精品视频网| 91精品国产乱| 91免费观看视频| 亚洲精品伦理在线| 久久精品一二三| 成人免费av在线| 首页综合国产亚洲丝袜| 国产精品久久久爽爽爽麻豆色哟哟| 欧美高清视频不卡网| 91视频在线看| 天天影视色香欲综合网老头| 欧美精选在线播放| 91丨porny丨国产| 亚洲激情图片小说视频| 国产日韩成人精品| eeuss鲁片一区二区三区在线观看| 琪琪久久久久日韩精品| 有坂深雪av一区二区精品| 欧美日韩一区国产| 日本韩国欧美国产| 日本一不卡视频| 洋洋av久久久久久久一区| 欧美男男青年gay1069videost| 91香蕉视频黄| 91麻豆精品在线观看| 国产精品白丝jk白祙喷水网站| 国产日韩三级在线| av资源网一区| 亚洲va天堂va国产va久| 日韩精品专区在线| 成人动漫av在线| 亚洲一区二区偷拍精品| 亚洲三级在线看| 亚洲人成7777| 欧美一区二区福利视频| 欧美精品在线视频| 91麻豆精品国产自产在线| 国产成人啪免费观看软件| 国产资源在线一区| 国产精品亚洲成人| 成人国产精品免费网站| 99久久精品国产一区二区三区| 国产成人在线视频网站| 高清免费成人av| 亚洲成人动漫在线观看| 午夜精品久久久久影视| 日韩国产欧美三级| 久久66热偷产精品| 国产激情一区二区三区桃花岛亚洲| 亚洲精品乱码久久久久久| 久久精品视频网| 欧美三级日韩在线| 制服.丝袜.亚洲.另类.中文| 成人黄色小视频| 色狠狠色狠狠综合| 成人综合婷婷国产精品久久免费| 亚洲v中文字幕| 老司机精品视频线观看86 | 亚洲日本在线视频观看| 日韩午夜av一区| 91在线一区二区三区| 韩国成人在线视频| 91看片淫黄大片一级在线观看| 久久国产精品99久久人人澡| 丰满少妇在线播放bd日韩电影| av电影在线观看完整版一区二区| 欧美性一二三区| ww久久中文字幕| 91精品蜜臀在线一区尤物| 欧美精品一区二区三区一线天视频 | 亚洲人一二三区| 日韩成人午夜精品| 不卡的看片网站| 国精产品一区一区三区mba视频| 成人综合激情网| 91精品久久久久久久99蜜桃 | 久久精品日产第一区二区三区高清版 | 国产真实乱对白精彩久久| 国产一本一道久久香蕉| 国内国产精品久久| 成人午夜碰碰视频| 激情成人午夜视频| 亚洲成年人影院| 国产精品久久久久久久久晋中| 久久一夜天堂av一区二区三区| 5566中文字幕一区二区电影| 日韩免费观看高清完整版| 精品视频1区2区3区| 国产a精品视频| 欧美日韩精品一二三区| 欧美日韩美女一区二区| 日韩欧美色电影| 中文字幕亚洲一区二区va在线| 久久人人爽人人爽| 一区二区三区在线免费视频| 亚洲免费观看高清完整版在线观看熊 | 亚洲精品久久嫩草网站秘色| 午夜精品久久久久久久99樱桃| **网站欧美大片在线观看| 国产精品水嫩水嫩| 国产亚洲一本大道中文在线| 亚洲特黄一级片| 国产精品乱子久久久久| 国产一区二区三区日韩| 欧美一a一片一级一片| 在线欧美小视频| 欧美少妇bbb| 欧美男男青年gay1069videost| 欧美一区二区三区免费| 一区二区日韩电影| 亚洲国产一区在线观看| 亚洲6080在线| heyzo一本久久综合| 日韩三级视频中文字幕| 中文字幕欧美一区| 日本不卡免费在线视频| 久久精品国产99国产精品| 97国产精品videossex| 久久天堂av综合合色蜜桃网| 亚洲女人的天堂| av在线一区二区三区| 91在线视频官网| 国产婷婷色一区二区三区在线| 性欧美疯狂xxxxbbbb| 免费观看久久久4p| 国产成人av电影在线观看| 欧美精品久久一区二区三区| 欧美天堂亚洲电影院在线播放| 欧美日韩成人在线一区| 亚洲人123区| 午夜精品久久久久| 日本欧美肥老太交大片| 欧美日韩激情在线| 亚洲欧美日韩精品久久久久| 另类小说视频一区二区| 555夜色666亚洲国产免| 国产亚洲精品aa午夜观看| 麻豆精品视频在线| 日韩欧美在线综合网| 一区二区三区.www| 在线观看日韩毛片| 26uuu欧美| 狠狠色狠狠色合久久伊人| 制服丝袜亚洲播放| 亚洲一区二区三区四区在线观看 | 日韩成人免费在线| 狠狠色丁香久久婷婷综合_中 | 日韩毛片一二三区| 在线观看亚洲专区| 性做久久久久久久免费看| 国产激情视频一区二区三区欧美| 精品国产乱码久久久久久浪潮| 奇米777欧美一区二区| 久久久久久毛片| 成人激情午夜影院| 亚洲乱码国产乱码精品精可以看| 欧美日韩你懂的| 亚洲欧洲日产国产综合网|