这个问题可能非常简单容易。 我的数据文件的列用#而不是制表符或逗号分隔。 如: 123#142#5#98#......
在这种格式中,当我尝试读取某一行中某列的值时,似乎无法读取123或142的整数值。
您是否有任何想法可以解决此问题,例如将#更改为真正的分隔,例如制表符还是逗号?
我真的很感激任何帮助或想法。
谢谢你, 艾萨克
答案 0 :(得分:4)
阅读时,您可以使用csv.reader()
这样的delimiter
参数:
>>> with open(your_file, "r") as f:
... data = [x for x in csv.reader(f, delimiter='#')]
...
>>>
当你正在写作时,csv.writer()
接受相同的参数..
>>> with open("foo.txt", "w") as f:
... w = csv.writer(f, delimiter=',')
... w.writerows(data)
...
>>>
以下是一个组合示例:
>>> with open("test.csv", "r") as inp, open("foo.csv", "w") as out:
... w = csv.writer(out, delimiter=",")
... w.writerows(x for x in csv.reader(inp, delimiter="#"))
...
>>>
test.csv
的内容:
123#142#5#98
foo#bar#baz#baf
foo.csv
的内容:
123,142,5,98
foo,bar,baz,baf
答案 1 :(得分:1)
你有数据
data ='123#142#5#98#1234'
data_list=data.split('#')
for each_element in data_list:
print each_element