在列表中排列第一个姓氏顺序

时间:2017-01-02 21:15:35

标签: python

我有一个名字如下的列表:

["Doe John" , "Smith Jacob Jason" , "Lincoln Abraham" , "Grant Ulysses S." , etc...]

以姓氏为首,有时是中间名或两个以上的名字。 我想把每个第一个单词移到最后:

["John Doe" , "Jacob Jason Smith" , "Abraham Lincoln" , "Ulysses S.Grant" , etc...]

1 个答案:

答案 0 :(得分:0)

试试这段代码。如果您想要任何澄清,请随时提出。

x = ["Doe John" , "Smith Jacob Jason" , "Lincoln Abraham" , "Grant Ulysses S."]

list1=[]

for k in range(0,len(x)):
    y = x[k].split(" ")
    #print '..........................',y
    z = len(y)
    #print z
    print '.......................................'
    str1= ''
    for l in range(0,len(y)):
        d = 1+l
        if d >= z:
            str1+=y[0]
        else:
            str1+=y[d]+' '
    print str1
    list1.append(str1)

print list1