作者lalaboom (lalaboom)
看板Python
标题[问题] 新手csv跟excel问题
时间Tue Jun 29 11:41:55 2021
大家好我最近刚接触python
目前有一个需求是要把csv档贴到excel(wps)中的某一个sheet
但是遇到了两个问题如下(python2跟3都一样)
1. 某些资料会不见
2. excel中会出现绿色箭头, 应该是数字被当成字串处理, 这样会导致我无法使用excel中的conditional formatting功能来处理数字,看起来是csv reader会自己加入单引号
请问我应该如何处理比较好呢?
目前是使用python csv跟openpyxl, 还是应该用panda?
谢谢大家.
- Data (csv file)
https://i.imgur.com/ZroPjuH.jpg
- Code (试过QUOTE_NONE好像无效)
https://imgur.com/enssBOI.jpg
- WPS Excel (第2行消失跟绿色箭头)
https://i.imgur.com/0aFZz8F.jpg
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 1.164.208.66 (台湾)
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/Python/M.1624938117.A.4BC.html
※ 编辑: lalaboom (1.164.208.66 台湾), 06/29/2021 11:47:47
※ 编辑: lalaboom (1.164.208.66 台湾), 06/29/2021 11:48:37
1F:推 poototo: row中的数字要真的转成数值type才存excel 06/29 12:33
2F:推 lycantrope: row append前先转成int或float吧 06/29 12:47
3F:推 taipoo: 写入的数字用int()处理一下就不会这样了 06/29 12:48
4F:→ lalaboom: 因为资料同时有字串跟数字,意思是说我只能每个栏位都判 06/29 14:08
5F:→ lalaboom: 断再决定要不要转吗?有没有auto convert之类的功能可以 06/29 14:08
6F:→ lalaboom: 使用呢? 06/29 14:08
7F:推 kevin1732: 用isdigit()去判断? 06/29 14:47
8F:→ kevin1732: 从截图看起来str的部份应该是"-",用if else应该也行? 06/29 14:49
9F:→ kevin1732: 用pandas会比简单吧? 06/29 14:50
10F:→ chickengod: pandas read_csv() 会自动判断每栏的 type 06/29 16:19
11F:推 lycantrope: 用try except ValueError 也行 06/29 16:46
12F:推 hanksky: 先看看row能不能再取成一个值,因为一列资料同时有字串 07/06 06:54
13F:→ hanksky: 和数字,不能这样判断,可以取到单值後,就可以针对数字 07/06 06:54
14F:→ hanksky: 转换,再存入excel 07/06 06:54