Python 如何使用非标准分隔符拆分记录

Python 如何使用非标准分隔符拆分记录,python,data-analysis,data-import,Python,Data Analysis,Data Import,在我的csv文件中,我有以下记录,用括号隔开: (a1,a2,a3),(b1,b2,b3),(c1,c2,c3),(d1,d2,d3) 如何将数据拆分为一个列表,以便获得类似以下内容: a1,a2,a3 b1,b2,b3 c1,c2,c3 d1,d2,d3 dump = open('sample_dump.csv','r').read() splitdump = dump.split('\n') print splitdump 目前,我的python代码如下所示: a1,a2,a3 b1,

在我的csv文件中,我有以下记录,用括号隔开:

(a1,a2,a3),(b1,b2,b3),(c1,c2,c3),(d1,d2,d3)
如何将数据拆分为一个列表,以便获得类似以下内容:

a1,a2,a3
b1,b2,b3
c1,c2,c3
d1,d2,d3
dump = open('sample_dump.csv','r').read()
splitdump = dump.split('\n')
print splitdump
目前,我的python代码如下所示:

a1,a2,a3
b1,b2,b3
c1,c2,c3
d1,d2,d3
dump = open('sample_dump.csv','r').read()
splitdump = dump.split('\n')
print splitdump

您可以按照以下思路做一些事情:

  • 拆下第一个和最后一个支架
  • )拆分,(
    字符序列
要按自定义字符串拆分,只需将其作为参数添加到拆分方法中,例如:

line.split("),(")

它有点粗糙,因此您必须根据输入数据格式中的任何预期变化进行概括(例如,您的第一个/最后一个字符是否总是括号?)。

您可以按照以下方式进行操作:

  • 拆下第一个和最后一个支架
  • )拆分,(
    字符序列
要按自定义字符串拆分,只需将其作为参数添加到拆分方法中,例如:

line.split("),(")

这有点不规范,因此您必须根据输入数据格式中的任何预期变化进行概括(例如,您的第一个/最后一个字符是否总是括号?)。

试试这个,首先按
拆分,“
然后,按
再次联接和拆分(
到没有括号的左元组

_line = dump.split("),")
_line = ''.join(_line).split("(")
print _line
>> ['', 'a1,a2,a3,', 'b1,b2,b3,', 'c1,c2,c3,', 'd1,d2,d3']
#drop first empty element
print _line.pop(0)
>> ['a1,a2,a3,', 'b1,b2,b3,', 'c1,c2,c3,', 'd1,d2,d3']

尝试此操作,首先按“
”、“
拆分,然后按
到不带括号的左元组)进行连接和拆分

_line = dump.split("),")
_line = ''.join(_line).split("(")
print _line
>> ['', 'a1,a2,a3,', 'b1,b2,b3,', 'c1,c2,c3,', 'd1,d2,d3']
#drop first empty element
print _line.pop(0)
>> ['a1,a2,a3,', 'b1,b2,b3,', 'c1,c2,c3,', 'd1,d2,d3']

首先,您需要了解获得结果所需执行的步骤,下面是一个黑客解决方案:

  • 拆下第一个和最后一个支架
  • 使用
    ),(
    作为组分隔符,拆分
行='(a1、a2、a3)、(b1、b2、b3)、(c1、c2、c3)、(d1、d2、d3)'

[1:-1]行中的组的[group.split(',')。split('),(')]


首先,您需要了解获得结果所需执行的步骤,下面是一个黑客解决方案:

  • 拆下第一个和最后一个支架
  • 使用
    ),(
    作为组分隔符,拆分
行='(a1、a2、a3)、(b1、b2、b3)、(c1、c2、c3)、(d1、d2、d3)'

[1:-1]行中的组的[group.split(',')。split('),(')]


因此,您希望a1、a2、a3作为列表的单个项目或3个单独的项目您希望a1、a2、a3作为列表的单个项目或3个单独的项目