【发布时间】:2013-10-27 10:05:18
【问题描述】:
我是 Python 2.7 的新手,我仍在努力掌握它。
我有一个包含一行行的文本文件,其中包含如下字符串:
"AA,,BB,2014-02-06,0,0|CC,,DD,2014-02-27,0,0|EE,,FF,2014-02-04,1,1"#"GG"#"USD"#"true"#Total : USD#1638.93#
(“USD”前面有一堆文字,每行不同。)
我试过这样做:
with open('out_put_usjfk50.csv', 'rb') as f:
reader = csv.reader(f, delimiter='#')
for row in reader:
amount = float(row[5])
if amount <= 800:
print row
elif amount is None:
pass
但我遇到了同样的错误:ValueError: could not convert string to float:
我被难住了。我如何遍历每一行以检查整数值(这是字符串的一部分),然后如果它小于 1500 美元,则打印该行?如果有人能指出正确的方向,我将不胜感激!
【问题讨论】:
-
美元前面的文字是否包含数字?
-
确实如此,但数字指的是日期。例如:2014-02-27
-
@jrd1 我已经添加了整行。很抱歉!
-
是整行,这样切换分隔符吗?
-
啊,第一列被引用了,它本身就是一个逗号分隔(嵌套)的类似 CSV 的行。
标签: python python-2.7 csv