贼拉苏 发表于 2019-9-9 16:10:50

新人求助:去除重复值保留一个个,保留原有的排序

本帖最后由 贼拉苏 于 2019-9-9 17:00 编辑

# 要只留下一个i,但是我这样处理的话索引会超出范围,希望能避免超出范围
# 怎么解决呢,或者有其他方法达到只留一个i,,保留原有的排序

pythonsrj 发表于 2019-9-9 16:39:07

本帖最后由 pythonsrj 于 2019-9-9 17:02 编辑

pythonsrj 发表于 2019-9-9 16:39:48

本帖最后由 pythonsrj 于 2019-9-9 17:01 编辑


pythonsrj 发表于 2019-9-9 16:41:23

set()函数,删除重复的元素,然后把他变成列表,在遍历就行

pythonsrj 发表于 2019-9-9 16:59:46

a=input('输入字符串删除重复的元素:')
a=list(set(a))
a.sort(reverse=1)
for i in a:
    print(i,end='')

贼拉苏 发表于 2019-9-9 17:00:24

pythonsrj 发表于 2019-9-9 16:39
a='iiiiiii'
b=list(set(a))
for i in b:


保留原有的排序

贼拉苏 发表于 2019-9-9 17:01:08

pythonsrj 发表于 2019-9-9 16:59
a=input('输入字符串删除重复的元素:')
a=list(set(a))
a.sort(reverse=1)


保留原有的排序,set()不保留吧

pythonsrj 发表于 2019-9-9 17:04:50

a=input('输入字符串删除重复的元素:')
a=list(set(a))
b=''
a.sort(reverse=1)
for i in a:
    b+=i
print(b)

pythonsrj 发表于 2019-9-9 17:05:46

贼拉苏 发表于 2019-9-9 17:01
保留原有的排序,set()不保留吧

sort()是排序的啊

pythonsrj 发表于 2019-9-10 10:28:07

你就不能试试?我发的是多个字符,删除重复的,然后给他排序,在重新赋值给b

panchuangye 发表于 2019-9-11 22:28:04

本帖最后由 panchuangye 于 2019-9-11 22:29 编辑

a = 'iiiiiiiii'
b=0
c = []
for i in a:
    if i !=b and i not in c:
      b=i
      c.append(i)
print(c)
页: [1]
查看完整版本: 新人求助:去除重复值保留一个个,保留原有的排序