python使用xlsxwriter打造excel周报日周的统计图表
2015-10-14 10:19
519 查看
python使用xlsxwriter打造excel周报日周的统计图表
http://xiaorui.cc/2014/12/14/python%E4%BD%BF%E7%94%A8xlsxwriter%E6%89%93%E9%80%A0excel%E5%91%A8%E6%8A%A5%E6%97%A5%E5%91%A8%E7%9A%84%E7%BB%9F%E8%AE%A1%E5%9B%BE%E8%A1%A8/【整理】Python中,添加写入数据到已经存在的Excel的xls文件,即打开excel文件,写入新数据
http://www.crifan.com/python_append_new_data_into_existing_excel_xls_file/python 处理 Excel 表格
see: http://www.cnblogs.com/sunada2005/p/3193300.html一、可使用的第三方库
python中处理excel表格,常用的库有xlrd(读excel)表、xlwt(写excel)表、openpyxl(可读写excel表)等。xlrd读数据较大的excel表时效率高于openpyxl,所以我在写脚本时就采用了xlrd和xlwt这两个库。介绍及下载地址为:http://www.python-excel.org/ 这些库文件都没有提供修改现有excel表格内容的功能。一般只能将原excel中的内容读出、做完处理后,再写入一个新的excel文件。
二、常见问题
使用python处理excel表格时,发现两个个比较难缠的问题:unicode编码和excel中记录的时间。
因为python的默认字符编码都为unicode,所以打印从excel中读出的中文或读取中文名的excel表或sheet时,程序提示错误UnicodeEncodeError: 'ascii' codec can't encode characters in position 0-2: ordinal not in range(128)。这是由于在windows中,中文使用了gb2312编码方式,python将其当作unicode和ascii来解码都不正确才报出的错误。使用VAR.encode('gb2312')即可解决打印中文的问题。(很奇怪,有的时候虽然能打印出结果,但显示的不是中文,而是一堆编码。)若要从中文文件名的excel表中读取数据,可在文件名前加‘u’表示将该中文文件名采用unicode编码。
有excel中,时间和日期都使用浮点数表示。可看到,当‘2013年3月20日’所在单元格使用‘常规’格式表示后,内容变为‘41353’;当其单元格格式改变为日期后,内容又变为了‘2013年3月20日’。而使用xlrd读出excel中的日期和时间后,得到是的一个浮点数。所以当向excel中写入的日期和时间为一个浮点数也不要紧,只需将表格的表示方式改为日期和时间,即可得到正常的表示方式。excel中,用浮点数1表示1899年12月31日。
/article/5977398.html
相关文章推荐
- Jenkins系列之—21 Jenkins Python Plugin获取环境变量
- Python运算符,python入门到精通[五]
- SSDP发现LAN中其他机器 --- Python
- Python 文件 和 异常处理
- 使用Python将Word文件另存为任意支持的格式
- python os模块学习
- Python I/O 笔记
- 《Python基础教程》
- 命令行字典
- 在arduino yun中的openwrt安装python easy_install 和pip
- 在Python的while循环中使用else以及循环嵌套的用法
- Python编程中的for循环语句学习教程
- Python循环语句之break与continue的用法
- Python编程中字符串和列表的基本知识讲解
- 深入讲解Python编程中的字符串
- python win下的缓存问题没得到解决
- python3 下supervisord
- Sublime Text 3 运行Python控制台不能输出中文的解决方法
- Sublime Text 3 运行Python控制台不能输出中文的解决方法
- python中一些比较实用的小技巧