python数据写入csv会丢失0字头_python csv模块生成CSV文件,0字头数字缺失,汉字乱码...
python CSV模块 写入CSV文件时,0开头的数字会丢失
# _*_ coding:utf-8 _*_
#win7+python2.7.x
import csv
csvfile = file('csvtest.csv', 'wb')
writer = csv.writer(csvfile)
writer.writerow(['id', 'url', 'keywords'])
data = [
('0011', 'http://www.59store.com/', '59store.com'),
('0022', 'http://59data.top/', '59data.top'),
('0033', 'http://my.space.zmx/', '汉子乱码?')
]
writer.writerows(data)
csvfile.close()
写入CSV时会丢失0字头,汉字乱码
是 Excel 的问题。
Excel 会自己猜测是否是一个数字列,如果是数字列,默认是会按数字显示(省略0)。
Excel 默认格式为本地字符集(简体中文版是
gbk
),它无法自动识别无BOM格式的
utf8
格式,除非在文件前面加上3字符的BOM头。(在 office 2007 下的某个版本,对有BOM头的
utf8
文件也有Bug)
你应该使用文本编辑器(不要用
notepad
)打开看看里面的内容。
补充说明下:
微软家的老牌软件对于utf8无bom文件的支持都很弱。bom头是utf8文件开头加上三个字符(十六进制是
EFBBBF
),具体可以搜索
utf8 bom头
。
没有太完美的方案,我列出来你根据情况选择一下:
如果想保持
utf
编码,可以尝试在文件前加上
Bom
头。(就是写入文件前先写入三字符)
如果只是给 Excel 使用,并且在大陆使用,你可以直接把文件写成
GBK
编码。
我測試的結果:
id,url,keywords
0011,http://www.59store.com/,59store.com
0022,http://59data.top/,59data.top
0033,http://my.space.zmx/,汉子乱码?
看起來純文字 file 沒有什麼問題,猜測可能是你用來開啟 csv 文件的試算表軟體造成的.(mac 的
Numbers
和
OpenOffice Calc
都有這個現象)
比如說,id 欄位的型態如果設為數字,則前面不必要的 0 可能會自動被忽略. 像這一點可以試試看改成純文字型態再開啟.
P.S.
Excel
的部分可以見 玉河CC 大的說明.
要更精準更細節地處理 xlsx 文件,可以用 XlsxWriter,他能夠控制資料的型態(data type),甚至樣式(format).
python数据写入csv会丢失0字头_python csv模块生成CSV文件,0字头数字缺失,汉字乱码...相关推荐
- python数据写入CSV
python代码中将数据写入CSV表格有两种办法:pandas和CSV. 下面我将介绍什么时候适合使用pandas,什么时候适合使用CSV库.主要区别是一个按行存储方便,一个按列存取方便. 1.按列存 ...
- python创建csv文件并写入-Python数据写入csv格式文件
(只是传递,基础知识也是根基) Python读取数据,并存入Excel打开的CSV格式文件内! 这里需要用到bs4,csv,codecs,os模块. 废话不多说,直接写代码!该重要的内容都已经注释了, ...
- Python数据写入csv格式文件
(只是传递,基础知识也是根基) Python读取数据,并存入Excel打开的CSV格式文件内! 这里需要用到bs4,csv,codecs,os模块. 废话不多说,直接写代码!该重要的内容都已经注释了, ...
- python xlwt模块生成excel文件并写入数据 xlrd读取数据
python中一般使用 xlwt (excel write)来生成Excel文件(可以控制单元格格式),用 xlrd 来读取Excel文件,用xlrd读取excel是不能对其进行操作的. 1.xlrd ...
- python xlwt写入excel_python xlwt模块生成excel文件并写入数据 xlrd读取数据
python中一般使用 xlwt (excel write)来生成Excel文件(可以控制单元格格式),用 xlrd 来读取Excel文件,用xlrd读取excel是不能对其进行操作的. 1.xlrd ...
- python数据写入表格生成图片_使用Python制作一个GUI界面,将随机生成的姓名存入到Excel文件中...
前面内容,我们详细介绍了如何使用Python生成一定数量的随机姓名. 生成一些随机姓名 如何用Python生成若干个随机姓名?男女取名有方法,不能千篇一律 之前,也提到过,我们在一些项目中,需要若干个 ...
- python数据写入到excel不同sheet_Python3 pandas库 (32) 将数据写入Excel多个sheet
在实际使用报表的时候,常常是一个excel文件里面包含多个sheet,这些sheet放在一个文件里面方便管理,也方便阅读. 将数据内容分开存在不同的sheet里面是excel经常遇到的操作.操作多了, ...
- python tempfile自动删除_Python tempfile模块生成临时文件和临时目录
tempfile 模块专门用于创建临时文件和临时目录,它既可以在 UNIX 平台上运行良好,也可以在 Windows 平台上运行良好. tempfile 模块中常用的函数,如表 1 所示. 表 1 t ...
- python生成表格文件_python读取和生成excel文件
1.用python读取csv文件: csv是逗号分隔符格式 一般我们用的execl生成的格式是xls和xlsx 直接重命名为csv的话会报错: Error: line contains NULL by ...
最新文章
- Microsoft Platform SDK Febrary 2003更新vc6的SDK网址
- wxpython安装失败_在Windows XP上安装wxPython后,“导入wx”失败
- C将十六进制数字字符串转成数字
- JSP页面元素,内置对象及request详解
- [Unity] 战斗系统学习 6:构建 TPS 框架 2
- 一张壁纸就是一段故事,壁纸控的找图不难!
- LINUX修改权限modify,linux文件权限查看及修改(实用)(View and modify Linux file permissions (practical)).doc...
- 设计模式学习之--Singleton(单例)模式
- Java Project项目在Linux下部署步骤及注意事项
- nginx配置与常见错误解决方法
- 函数名应用,闭包,装饰器初识
- CMMI3 和 CMMI 4
- 语音合成IC选型之经验分享
- 重装系统时,USB接口鼠标和键盘不能使用的解决办法
- python 实验七 字典与集合 (下)
- 翻译: 巴菲特公式:睡觉比醒来更聪明
- 笔记本电脑f11功能键_电脑技巧:键盘上F功能键F1-F12详解
- PAT 乙级1068 万绿丛中一点红(20 分)
- Linux优秀软件整理 - 摘自Linux 开源中国
- 计算机二级ms试题讲解,计算机二级MSOffice考试真题与答案解析(全套)
热门文章
- JAVA读取Excel数据
- 猜数字游戏c语言原理二进制,第一个c语言实现的猜数字游戏
- VMware ESXi 7.0 U3i macOS Unlocker OEM BIOS (标准版和厂商定制版)
- 服务和控制器应用CPU占用过高问题
- 切入万亿家居市场,国美是要充当“逆袭者”还是“搅局者”?
- 程序员专属的免费编程文本编辑器-----PSPad
- 11家PaaS公有云供应商服务功能要点比较
- 思科Netflow的设置
- 设置网络工作组计算机,WINDOWS10如何设置网络工作组
- matlab培训2018年暑假,2016暑假建模培训Matlab小作业