字符串邻近去重_CodingPark编程公园

字符串邻近去重


def special_func_order(seq):
    list_ = []   # 定义一个空列表,用来存储判断后的数据

    for i in range(len(seq) - 1):  # 假如 len(seq) = 17  , 则range(16) --> 0-16
        if seq[i] != seq[i + 1]:  #  i 从0到15, i+1 == 1-->16, 可迭代序列的索引就是0--15(包含了前16个)
            list_.append(seq[i])  # 第17个数字,如果和16个相同,那么16和17都不会被append;如果和16不同,那么,只会放16个,不会放17个
    list_.append(seq[-1])  # 为了避免最后一个被遗漏,我们需要手动添加进去

# 下面的if判断,是用来判断输入数据的原来的type,根据原来的type,进行操作后的转化。
    if isinstance(seq, list):
        print(list_)
    if isinstance(seq, tuple):
        print(tuple(list_))
    else:
        myseq = ''.join(list_)
        print(myseq)


_list = [1, 2, 3, 2, 3, 4, 5, 6, 6, 6, 8, 8]
_tuple = (1, 2, 3, 2, 3, 4, 5, 6, 6, 6, 8, 8, 9)
_str = 'AAABBBCDCCABBCcDD'
special_func_order(_list )
special_func_order(_tuple)
special_func_order(_str )


打印结果如下:
在这里插入图片描述

更多参考

https://blog.csdn.net/gymaisyl/article/details/85111561

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

TEAM-AG

编程公园:输出是最好的学习方式

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值