Dan*_*nea 2 python csv comma pyparsing
在欧洲大陆,csv文件通过分号分隔,因为数字有,而不是.所以,我正在尝试编写与commaSeparatedList相同的semicolonSeparatedList,但是; 代替 ,:
_semicolonsepitem = Combine(OneOrMore(Word(printables, excludeChars=';') +
Optional( Word(" \t") +
~Literal(";") + ~LineEnd() ) ) ).streamline().setName("semicolonItem")
semicolonSeparatedList = delimitedList( Optional( quotedString.copy() | _semicolonsepitem, default="") ).setName("semicolonSeparatedList")
Run Code Online (Sandbox Code Playgroud)
然而解析:
Name;Ref;Address
Run Code Online (Sandbox Code Playgroud)
结果是
['Name']
Run Code Online (Sandbox Code Playgroud)
代替
['Name', 'Ref', 'Address']
Run Code Online (Sandbox Code Playgroud)
有人可以帮忙吗?
丹,谢谢你
找到答案:好像我找到了:
_semicolonsepitem = Combine(OneOrMore(Word(printables, excludeChars=';') +
Optional( Word(" \t") +
~Literal(";") + ~LineEnd() ) ) ).streamline().setName("semicolonItem")
semicolonSeparatedList = delimitedList( Optional( quotedString.copy() | _semicolonsepitem, default="") ).setName("semicolonSeparatedList")
Run Code Online (Sandbox Code Playgroud)
我添加了demim =';' 也是delimitedList.
谢谢,丹
你有没有尝试过python 的csv模块?
在那里,您可以轻松指定分隔符.
import csv
with open('eggs.csv', 'rb') as csvfile:
spamreader = csv.reader(csvfile, delimiter=' ', quotechar='|')
Run Code Online (Sandbox Code Playgroud)
在Birei的评论之后编辑:我刚从docs python页面中获取示例,你可以输入你想要的任何东西作为csv阅读器的分隔符:
''
','
';'
'一个'
| 归档时间: |
|
| 查看次数: |
6930 次 |
| 最近记录: |