2

例如,我有一个名称字段,例如“Smith Joe”,我需要一个 python 语句来选择“Smith J”。我可以使用以下方法将所有内容都放到空间中:

x = 'Smith Joe'
x[:x.rindex(' ')]
'Smith'
4

6 回答 6

2

我可能想做类似的事情:

import re

x = 'Smith Joe'
print re.match('\w+\s\w', x).group()
# Smith J

这将使分组和格式化更容易调整,例如:

m = re.match('(\w+)\s(\w)', x)
print 'Mr. {1} {0}'.format(*m.groups())
于 2013-07-17T15:43:16.853 回答
2
x = 'Smith Joe'
x[:x.rindex(' ') + 2]

这使

Smith J
于 2013-07-17T15:35:21.393 回答
2
 x = 'Smith Joe'
 x[:x.rindex(' ') + 2 ]
'Smith J'
于 2013-07-17T15:35:32.190 回答
2
x = 'Smith Joe'
x[:x.rindex(' ') + 2]
于 2013-07-17T15:35:39.280 回答
2

您不能将 :x.rindex(' ') 增加 2,这将包括空格后的第一个字符吗?

x[:x.rindex(' ') + 2]
于 2013-07-17T15:35:56.103 回答
0
x = 'Smith Joe'.split()
y = x[0] + " "+ x[1][0]

a = 'Smith Joe King Cole'.split()
b = x[0]+" "+" ".join([t[0] for t in x[1:])
于 2013-07-17T15:36:50.893 回答