如何对特定字符串进行排序,在以下情况下(PYTHON)

How to sort specific string, in the following situation (PYTHON)

我正在尝试构建一个 Acronym Shortner(作为初学者项目)
LINK:http://pastebin.com/395ig9eC

说明:
++缩写块++

如果用户将字符串变量设置为类似 "international Business machines" 的东西 return IBM

但在...

++SORTING BLOCK++

如果用户将字符串变量设置为类似 "light amplification by the simulated emission of radiation"

我试图将整个句子拆分为:

 z=string.split(" ")
 l=len(z)

然后使用以下循环:
'''|排序块|'''<

for x in range(0,l,1):
    esc=z[x]
    if (z[x]=="by" or z[x]=="the" or z[x]=="of"):
            esc=z[x+1]


    emp=emp+" "+esc


print emp

但问题是当有 2 个连续的排除词时 python 把它搞砸了。 我该如何解决?

这会取句子中每个单词的第一个字母,忽略被排除的单词,然后使用 join 将这些字母放在一起。

#Python3
def make_acronym(sentence):
    excluded_words = ['by', 'the', 'of']
    acronym = ''.join(word[0] for word in sentence.split(' ') if word not in excluded_words)
    return acronym.upper()

示例:

>>> make_acronym('light amplification by the simulated emission of radiation')
'LASER'