在Python

时间:2016-08-03 17:43:04

标签: python string split

我通过将字符串拆分为分隔字符来将csv类型数据集解析为Python元组。非常简单的东西。

我的问题是,任何字段都可能包含空字符串作为有效数据。这很好,除非最后一个字段是一个空字符串,在这种情况下,生成的元组的长度比它应该少一个。

例如,给定以下字符串,使用逗号作为分隔符:

"2016-08-03,jim,,5146,,ok,,2,"  

我希望得到以下输出:

["2016-08-03", "jim", "", "5146", "", "ok", "", "2", ""]

在尝试找到这个问题的简单解决方案时,我找到了this answer,详细说明了如何在Java的拆分实现中保留尾随空字符串。但是,我一直无法在Python中找到任何相同的东西。是否有任何替代的标准库方法或其他简单的技巧会产生这种行为,或者我是否需要在脚本中添加一些额外的逻辑来实现这一目标?

(我意识到编写一个产生这个输出的新方法会非常简单,但是从维护的角度来看,为了减少代码的利益,我想我会首先检查一下我是否遗漏了一些东西更容易。)

1 个答案:

答案 0 :(得分:0)

我认为python直接给出了正确的输出。你有什么具体的例子吗? :

x = "5|6|7||8|9||"

x.split("|")
Out: ['5', '6', '7', '', '8', '9', '', '']