如何保存字符串的顺序?(Python 3.)

时间:2016-04-22 09:38:30

标签: python python-3.x duplicates

我需要保存字符串中单词的顺序,其中每个单词都用第一次出现的(1基)索引标识。

对于样本输入

sentence = "i am what i am am"

所需的输出是

order = "1 2 3 1 2 2"

提前致谢。 :)

1 个答案:

答案 0 :(得分:1)

使用字典来跟踪首先看到某个单词的位置:

s = 'i am what i am am'
seen = {}
result = []
for index, word in enumerate(s.split(), 1):
    result.append(seen.setdefault(word, index))
result = ' '.join(map(str, result))

print(result) # 1 2 3 1 2 2