【发布时间】:2018-01-15 10:11:29
【问题描述】:
我想将带有数字、字母和特定空格的字符串拆分为特定组件。
考虑字符串
ATLANTYS2_I - 3103 aRNH_profile - 121 2.7e-35 118.7 0.0 1 1 2.7e-37 5.6e-35 117.7 0.0 2 120 1342 1458 1341 1459 0.98 Gypsy Arabidopsis thaliana_+1
现在让字符串为content[3]。我运行了命令
import re
result = re.split(r'\s{2,}', content[3])
这给了我
['ATLANTYS2_I',
'-',
'3103 aRNH_profile',
'-',
'121',
'2.7e-35',
'118.7',
'0.0',
'1',
'1',
'2.7e-37',
'5.6e-35',
'117.7',
'0.0',
'2',
'120',
'1342',
'1458',
'1341',
'1459 0.98 Gypsy\tArabidopsis thaliana_+1']
我已将字符串拆分为 2 个空格。但最后一个条目1459 0.98 Gypsy\tArabidopsis thaliana_+1 仍归为一个。
我想用一个空格分割最后一个条目,删除结果中的最后一个条目并添加一个空格。然而,这在我看来相当笨重。
有没有办法优雅地拆分它,以便我得到最后一个条目的以下结果
'1459','0.98', Gypsy\tArabidopsis thaliana_+1'?
【问题讨论】:
-
我认为您需要单独拆分最后一个条目,即使这意味着更多代码。编写明确的代码比编写一个月内无法理解的“优雅”的单行代码更好。
-
我同意你将如何拆分最后一个条目以便我得到想要的结果?
-
这是您定义的字符串,您无法通过列表访问。请参阅此链接以更好地理解:docs.python.org/2/library/string.html