【发布时间】:2021-05-19 15:25:47
【问题描述】:
我想将str 解析为float 值列表,但是我想灵活地处理我的分隔符。具体来说,我希望能够使用其中任何一个
s = '3.14; 42.2' # delimiter is '; '
s = '3.14;42.2' # delimiter is ';'
s = '3.14, 42.2' # delimiter is ', '
s = '3.14,42.2' # delimiter is ','
s = '3.14 42.2' # delimiter is ' '
我想过删除所有空格,但这会禁用最后一个版本;我通过执行re.split('[;, ]', s) 尝试了re.split()-function,它可以使用单个字符作为分隔符,但否则会失败。
我可以做
s.replace('; ', ';').replace(', ', ';').replace(',', ';').replace(' ', ';')
s.split(';')
这可行,但似乎不是一个好的做法或有用的 - 特别是如果我将来会添加更多分隔符。有什么好的方法可以做到这一点?
【问题讨论】:
-
如果你写了一个将分隔符作为参数的函数呢?
标签: python string split delimiter