Python学习心得字符串的去重操作

一个字符串中可能包含许多相同的元素,为了保证字符串中的唯一性,下面介绍的是字符串的去重操作:

第一种方式:利用for+if的结构进行去重

这个程序是对字符串中的每个元素进行判断,如果不在新建的空字符串中就把该元素添加进来,否则就直接忽略过去。

s='helloworldhelloworldhelloworld'
new_s=''
for item in s:
    if item not in new_s:
        new_s+=item#进行拼接
print(new_s)

第二种方式:利用索引+if的结构进行去重

其实这与第一个的方式差不多,都是去判断每一个的情况,只不过现在这个又是运用了索引的方式进行,通过索引将字符串中的每个元素进行索引,然后利用if的结构去判断。

#索引+if进行去重
new_s2=''
for i in range(len(s)):
    if s[i] not in new_s2:
        new_s2+=s[i]
print(new_s2)

第三种方式:利用集合+列表的结构去重

第三种方式是先利用集合将字符串去重,集合是唯一性的,通过这个操作我们可以总结出来,一个序列可以被转成想要的序列的类型(比如说:集合、列表等),进行转换是为了利用其特性使得我们获得想要的序列。

#通过集合去重+列表排序
new_s3=set(s)#转成集合为了先去重
lst=list(new_s3)#再转成列表
lst.sort(key=s.index)#下面是对列表进行排序按照序列s的顺序
print(''.join(lst))

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值