文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

Python中字符串和列表怎么去重

2023-07-05 23:30

关注

这篇文章主要介绍“Python中字符串和列表怎么去重”,在日常操作中,相信很多人在Python中字符串和列表怎么去重问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Python中字符串和列表怎么去重”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

字符串去重

1、直接遍历字符串的方式

# *_* coding : UTF-8 *_*name='王李张李陈王杨张吴周王刘赵黄吴杨'newname=''for char in name:    if char not in newname:        newname+=charprint (newname)

输出:

王李张陈杨吴周刘赵黄

2、遍历去重的另一种方式

# *_* coding : UTF-8 *_*name='王李张李陈王杨张吴周王刘赵黄吴杨'newname=''i = len(name)-1while True:    if i >=0:        if name[i] not in newname:            newname+=(name[i])        i-=1    else:        breakprint (newname)

输出:

杨吴黄赵刘王周张陈李

3、将字符串转换成列表的方式(list sort)

# *_* coding : UTF-8 *_*name = '王李张李陈王杨张吴周王刘赵黄吴杨'myname = set(name)print(myname)newname = list(set(name))print(''.join(newname))newname.sort(key=name.index)print(newname)print(''.join(newname))

输出:

{'张', '黄', '刘', '杨', '吴', '周', '陈', '赵', '王', '李'}
张黄刘杨吴周陈赵王李
['王', '李', '张', '陈', '杨', '吴', '周', '刘', '赵', '黄']
王李张陈杨吴周刘赵黄

4、根据字符串下标,判断子集

# *_* coding : UTF-8 *_*name='王李张李陈王杨张吴周王刘赵黄吴杨'l = len(name)        # 字符串下标总长度for s in name:    if name[0] in name[1:l]:        name = name[1:l]    else:        name= name[1:l]+name[0]print(name)

输出:

李陈张周王刘赵黄吴杨

5、使用 ', '.join(L) ,将列表拼接成我们想要的字符串

# *_* coding : UTF-8 *_*name='王李张李陈王杨张吴周王刘赵黄吴杨'zd={}.fromkeys(name)mylist=list(zd.keys())# mylist = list({}.fromkeys(name).keys())print (''.join(mylist))

输出:

王李张陈杨吴周刘赵黄

列表去重

1、利用for循环的方式

# *_* coding : UTF-8 *_*city=['上海', '广州', '上海', '成都', '上海', '上海', '北京', '上海', '广州', '北京', '上海']ncity = [] # 定义一个空列表for item in city: # 遍历列表city    if item not in ncity: # 如果item不在ncity,则添加到ncity        ncity.append(item)print (ncity)

输出:

['上海', '广州', '成都', '北京']

2、利用set()函数

set() 函数创建一个无序不重复元素集,可进行关系测试,删除重复数据。

# *_* coding : UTF-8 *_*city=['上海', '广州', '上海', '成都', '上海', '上海', '北京', '上海', '广州', '北京', '上海']ncitx=list(set(city))print(ncitx)

输出:

['广州', '成都', '上海', '北京']

3、利用sort()排序

# *_* coding : UTF-8 *_*city=['上海', '广州', '上海', '成都', '上海', '上海', '北京', '上海', '广州', '北京', '上海']ncitx=list(set(city))ncitx.sort( key=city.index)print(ncitx)

输出:

['上海', '广州', '成都', '北京']

4、利用sort()排序后,迭代

# *_* coding : UTF-8 *_*city=['上海', '广州', '上海', '成都', '上海', '上海', '北京', '上海', '广州', '北京', '上海']city.sort()for x in city:     while city.count(x)>1:         del city[city.index(x)]print(city)

输出:

['上海', '北京', '广州', '成都']

5、巧用字典

# *_* coding : UTF-8 *_*city=['上海', '广州', '上海', '成都', '上海', '上海', '北京', '上海', '广州', '北京', '上海']mylist = list({}.fromkeys(city).keys())  # fromkeys() 函数创建一个新字典,获取新字典的键(唯一值)print (mylist)

输出:

['上海', '广州', '成都', '北京']

到此,关于“Python中字符串和列表怎么去重”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注编程网网站,小编会继续努力为大家带来更多实用的文章!

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-后端开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯