如何从csv文件分开逗号分隔的数据?
我已经开了一个CSV文件,我想每一个是逗号分隔的字符串进行排序,并在同一行:如何从csv文件分开逗号分隔的数据?
前::文件:
name,sal,dept
tom,10000,it
O/P ::每个串串可变
我有一个文件,该文件已经打开,所以我不能用“开放”的API,我必须使用“csv.reader”这不得不一次读取一行。
我不知道我是否正确地理解你的问题。你可能想看看反正在Python documentation描述的分裂功能。
我只想从csv文件的行中获取数据,因为我的第一行文件包含字段名称,并且所有行都包含数据。 – Rahul99 2010-03-09 13:19:51
如果打开文件进行读取绑定到一个变量名,说fin
;假设你正在使用Python 2.6,你知道该文件不是空的(至少具有标题行):
import csv
rd = csv.reader(fin)
headers = next(rd)
for data in rd:
...process data and headers...
在Python 2.5,使用headers = rd.next()
代替headers = next(rd)
。
这些版本的使用领域data
的列表,这是一个完全通用的解决方案(即不需要事先知道文件有多少列有:你访问它们为data[0]
,等,和当前行具有len(data)
字段在循环的每个腿)。
如果知道该文件具有完全相同的三列,并更愿意使用不同的名称,每列有一个变量,在环头更改为:
for name, sales, department in rd:
现场数据由读写器(就像是返回标题)都是字符串。如果您知道的例子,第二列是一个int,并希望把它当作这样的,开始循环与
for data in rd:
data[1] = int(data[1])
,或者,如果您使用的命名变量变异:
for name, sales, department in rd:
sales = int(sales)
@Rahul,对不起,我不明白你在问什么。你能提供你的输入和期望的输出块引用的例子吗? – MattH 2010-03-09 10:42:47
你问如何使用csv? http://docs.python.org/library/csv.html文档有什么问题? – 2010-03-09 10:57:36