作者Supershero (拉拉)
看板Python
标题[问题] 读csv档转二次阵列
时间Thu Apr 6 22:48:47 2017
最近开始学python在练习资料处理卡关QQ
我读入一个csv档之後转为二次阵列
因为档案里有些空白、有些整数、有些小数
所以我希望能把空白补零,整数和小说化成float以便之後做计算
http://i.imgur.com/xwoQDQ0.jpg
请问这样写哪里出了问题吗
空白的储存格好像没有办法用' '判断
用None判断的结果也不对
後面改成float也不对
Print出来都还是str
有请版友指点迷津QQ
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 115.82.148.9
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/Python/M.1491490129.A.756.html
1F:→ hsnusonic: 因为你第二个while loop只有j=0的时候跑过一遍04/07 00:34
2F:→ hsnusonic: i 要归零才会是你想要的,但其实这用for loop比较直观04/07 00:36
感谢回答~
我有试着用for过
用for i in Li[j][i] in range(5,1)这样吗?
想到Li[j][i] 好像是一个字串而不是list就有点奇怪
只写Li又没办法指出i和j的位置
3F:→ zerof: 贴图是要别人重打一次你的 code 吗....04/07 01:02
抱歉抱歉~
因为我是读csv档
只有code可能也没办法跑
还是档案也要放上来吗?
※ 编辑: Supershero (115.82.148.9), 04/07/2017 07:13:43
4F:→ s860134: "巢状回圈" 你需要这个,google 一下吧04/07 07:39
5F:→ s860134: 你可以把档案的一部分,一两行,知道格式比较好回答04/07 07:40
太感谢你了!我来试试看
http://i.imgur.com/c4tmxdJ.jpg
csv的内容大概是这样
有30栏579列
因为要去除表头所以是578列
最後print13栏主要是为了确认空白的部分有没有补上零
至於从5开始是因为前面几栏都是文字
之後也不会用来计算
※ 编辑: Supershero (111.184.22.33), 04/07/2017 09:37:33