我对Python很新.我使用的外部模拟软件为我提供了包含以下格式数据的报告:
1 29 Jan 2013 07:33:19.273 29 Jan 2013 09:58:10.460 8691.186
Run Code Online (Sandbox Code Playgroud)
我希望将上述数据分成四个字符串,即;
'1', '29 Jan 2013 07:33:19.273', '29 Jan 2013 09:58:10.460', '8691.186'
Run Code Online (Sandbox Code Playgroud)
我不能使用str.split,因为它将日期拆分为多个字符串.在1和第一个日期之间以及第一个和第二个日期之间似乎有四个空格.我不知道这是四个白色空格还是标签.
'\t'在split上使用作为分隔符并没有太大作用.如果我指定' '(4个空格)作为分隔符,我得到前三个字符串.然后我还得到一个空字符串和最后一个字符串中的前导空格.第二个日期和数字之间有10个空格.
任何有关如何处理这个问题的建议都会有所帮助!
谢谢!
您可以使用简单的正则表达式拆分多个空格:
import re
multispace = re.compile(r'\s{2,}') # 2 or more whitespace characters
fields = multispace.split(inputline)
Run Code Online (Sandbox Code Playgroud)
示范:
>>> import re
>>> multispace = re.compile(r'\s{2,}') # 2 or more whitespace characters
>>> multispace.split('1 29 Jan 2013 07:33:19.273 29 Jan 2013 09:58:10.460 8691.186')
['1', '29 Jan 2013 07:33:19.273', '29 Jan 2013 09:58:10.460', '8691.186']
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1158 次 |
| 最近记录: |