输入一个字符串,输出将其中重复出现的字符去掉后的字符串
这是题目要求。我的做法是,用set()转为集合,再设置个z="",通过循环把集合里的放新设置的z里,然后输出。
x=input()
y=list(set(x))
z=""
for i in y:
z=z+i
print(z)
但提示不对,debug一下发现输入输出顺序不对。那该怎么写这个程序 用啥方法
目前python的集合set还是无序的,所以转成集合再转回列表,位置可能会乱。
如果想省事,可以用字典,3.7以后的python字典是有序的。
from collections import Counter
s = Counter(input())
print("".join(s.keys()))
如果不导入Counter的话,常规做法是遍历字符串
s = input()
res = ""
for i in s:
if i not in res:
res += i
print(res)
set是无序的啊
让你删字符你就老老实实的删字符,不要玩花活