Best way to remove duplicate characters (words) in a string?

被刻印的时光 ゝ 提交于 2019-12-01 11:18:57
' '.join(set(foo.split()))

Note that split() by default will split on all whitespace characters. (e.g. tabs, newlines, spaces)

So if you want to split ONLY on a space then you have to use:

' '.join(set(foo.split(' ')))

Do you mean?

' '.join( set( someString.split() ) )

That's the unique space-delimited words in no particular order.

out = []
for word in input.split():
    if not word in out:
        out.append(word)
output_string = " ".join(out)

Longer than using a set, but it keeps the order.

Edit: Nevermind. I missed the part in the question about order not being important. Using a set is better.

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!