Python分割多空格字符串
问题:
s = 'P y thon'
l = list(s.split(" "))
结果:
['P', '', 'y', '', 'thon']
这个问题实际上是因为给了固定参数, 导致才分割时按照固定的空格数量进行分割.
解决方法:
不给 split() 方法传递参数
s = 'P y thon'
l = list(s.split())
不传递参数的结果
['P','y','thon']
解决了这个问题之后我又去翻阅了一下官方文档, 在文档中也提到了这个问题.
- str.split(sep=None,maxsplit=-1)
split 方法接受两个参数, sep是分割符号; maxsplit是最大分割数量, 默认值为-1. 如果给出了sep,连续的分隔符不会被组合在一起,而是被视为分隔空字符串(例如,’ 1,,2’.split(’,’)返回[‘1’,’ ",’ 2’])