Python 选择不同长度的数字

Python 选择不同长度的数字,python,slice,Python,Slice,我正在使用Python,它有一个包含两列的列表,中间有很多空白,例如: TEXT 123.34645 TEXT 13.35372 TEXT 0.55532 TEXT 11.60538 我希望我的python代码抓住右边的数字 起初,我是这样做的,一行一行地走,抓住[15:24]或其他任何东西,但后来我意识到有些数字的长度不同,所以这是行不通的 请问正确的方法是什么?只需使用: 默认形式的.split在任意宽

我正在使用Python,它有一个包含两列的列表,中间有很多空白,例如:

TEXT           123.34645
TEXT            13.35372
TEXT             0.55532
TEXT            11.60538
我希望我的python代码抓住右边的数字

起初,我是这样做的,一行一行地走,抓住[15:24]或其他任何东西,但后来我意识到有些数字的长度不同,所以这是行不通的

请问正确的方法是什么?

只需使用:

默认形式的.split在任意宽度的空格上拆分,忽略前导空格和尾随空格。在上面的示例中,忽略行末尾的\n

如果您的文本也包含空格,请限制使用:

>>> 'TEXT WITH WHITESPACE           123.34645'.rsplit(None, 1)
['TEXT WITH WHITESPACE', '123.34645']
None告诉.rsplit或.split在可变宽度空白上进行分割,1是要进行的最大分割数。

只需使用:

默认形式的.split在任意宽度的空格上拆分,忽略前导空格和尾随空格。在上面的示例中,忽略行末尾的\n

如果您的文本也包含空格,请限制使用:

>>> 'TEXT WITH WHITESPACE           123.34645'.rsplit(None, 1)
['TEXT WITH WHITESPACE', '123.34645']
None告诉.rsplit或.split在可变宽度空白上进行分割,1是要进行的最大分割数。

.split是答案

因此,当您从文本文件中读入行时,请对每行应用拆分方法

In [1]: f = open('test.txt')   # test.txt contains the text indicated in your question

In [2]: for line in f:
   ...:     result = line.split()
   ...:     print result
   ...:
['TEXT', '123.34645']
['TEXT', '13.35372']
['TEXT', '0.55532']
['TEXT', '11.60538']
.答案是分裂

因此,当您从文本文件中读入行时,请对每行应用拆分方法

In [1]: f = open('test.txt')   # test.txt contains the text indicated in your question

In [2]: for line in f:
   ...:     result = line.split()
   ...:     print result
   ...:
['TEXT', '123.34645']
['TEXT', '13.35372']
['TEXT', '0.55532']
['TEXT', '11.60538']
产生

123.34645
13.35372
0.55532
11.60538
>>> 
产生

123.34645
13.35372
0.55532
11.60538
>>>