【发布时间】:2020-05-25 15:56:31
【问题描述】:
我有一个分隔文件,其中分隔符是 3 个符号:'*'
pd.read_csv(file, delimiter="'*'")
引发错误:
"delimiter" must be a 1-character string
由于某些行可以包含 *-symbol,我不能使用不带引号的星号作为分隔符。这就是为什么我认为剥离线在这里没有帮助。
是否可以解析包含超过 1 个符号的分隔符的分隔文件?
【问题讨论】:
-
在使用 pandas 读取文件之前,您可以使用正则表达式将
'*'的每个实例替换为逗号或其他单字符分隔符。 -
我也在考虑这个,但这不是我想要的,因为“逗号”或其他单个字符也可以是文件的一部分。然后我会遇到另一个问题,即某些行将被错误解析(比预期的元素多等),因为该字符存在于该行中。
-
避免这种情况的常用方法是为字符串添加一个引号字符(我认为您也可以使用正则表达式添加一个)。使用制表符作为分隔符怎么样?
-
@Andy_101 这对我没有帮助,因为我知道我同时拥有“'”和“*”符号。从上面提到的答案来看,它看起来像“或”运算符。
标签: python python-3.x pandas csv