list 去重_测试面试题集Python列表去重

——————·今天距2020年21天·——————

这是ITester软件测试小栈第86次推文

请定义函数,将列表[10, 1, 2, 20, 10, 3, 2, 1, 15, 20, 44, 56, 3, 2, 1]中的重复元素除去,写出至少3种方法。
  • 方法一:利用集合去重

# !/usr/bin/python3# -*- coding:utf-8 -*-# @Time:2019/12/10  07:00# @微信公众号:ITester软件测试小栈# @Author:coco# @Python交流群:604469740# @Email:3593721069@qq.com# @File:test.py# @Software:PyCharmlist_1=[10, 1, 2, 20, 10, 3, 2, 1, 15, 20, 44, 56, 3, 2, 1]def func1(list_1):"""利用集合去重"""return list(set(list_1))print('去重后的列表:',func1(list_1))
  • 方法二:利用for循环

# !/usr/bin/python3# -*- coding:utf-8 -*-# @Time:2019/12/10  07:00# @微信公众号:ITester软件测试小栈# @Author:coco# @Python交流群:604469740# @Email:3593721069@qq.com# @File:test.py# @Software:PyCharm'''用i遍历list,如果不在新列表中,则添加到新列表,,否则不添加进去,依次循环'''list_2 = [10, 1, 2, 20, 10, 3, 2, 1, 15, 20, 44, 56, 3, 2, 1]def func2(list_2):    #定义一个空列表    mylist_2=[]    #i遍历list_2    for i in list_2:        #如果i不在mylist_2,则添加到mylist_2        if i not in mylist_2:            mylist_2.append(i)            return list_2    print(func2(list_2))
  • 方法三:巧用sort()排序

# !/usr/bin/python3# -*- coding:utf-8 -*-# @Time:2019/12/10  07:00# @微信公众号:ITester软件测试小栈# @Author:coco# @Python交流群:604469740# @Email:3593721069@qq.com# @File:test.py# @Software:PyCharmlist_3 = [10, 1, 2, 20, 10, 3, 2, 1, 15, 20, 44, 56, 3, 2, 1]def func3(list_3):  """  使用排序的方法  """  result_list=[]  temp_list=sorted(list_3)  i=0  while i      #如果不在result_list则添加进去,否则i+1    if temp_list[i] not in result_list:      result_list.append(temp_list[i])    else:      i+=1  return result_listprint(func3(list_3))
  • 方法四:巧用字典

# !/usr/bin/python3# -*- coding:utf-8 -*-# @Time:2019/12/10  07:00# @微信公众号:ITester软件测试小栈# @Author:coco# @Python交流群:604469740# @Email:3593721069@qq.com# @File:test.py# @Software:PyCharmlist_4= [10, 1, 2, 20, 10, 3, 2, 1, 15, 20, 44, 56, 3, 2, 1]def func4(list_4):    """    使用字典的方式    """    #fromkeys() 函数创建一个新字典,获取新字典的键(键值是唯一的)    result_list = []    for i in {}.fromkeys(list_4).keys():        result_list.append(i)    return result_listprint(func4(list_4))
  • 方法五:利用迭代器

# !/usr/bin/python3# -*- coding:utf-8 -*-# @Time:2019/12/10  07:00# @微信公众号:ITester软件测试小栈# @Author:coco# @Python交流群:604469740# @Email:3593721069@qq.com# @File:test.py# @Software:PyCharmimport itertoolslist_5= [10, 1, 2, 20, 10, 3, 2, 1, 15, 20, 44, 56, 3, 2, 1]def func5(list_5):    """利用迭代器"""    list_5.sort()    temp_list= itertools.groupby(list_5)    result_list=[]    for i,j in temp_list:        result_list.append(i)    return result_listprint(func5(list_5))
运行结果:

e646a22eae187c976078b0df399b9d29.png

以上 That's  all ITester软件测试小栈 往期内容宠幸 叮—这有一打让你666的测试终极资料包,请查收!

打开PyCharm永久激活的这两个锦囊,再也不用担心写代码的时候让我付费了!

QQ空间面试题放送,速度教科书式扑街补救offer!

金九银十加薪季,测试题预热一波。

测试面试题集-测试基础理论测试面试题集-测试用例设计:登录、购物车、QQ收藏表情、转账、充值、提现测试面试题集-生活物品测试:杯子、伞、钢笔、桌子

Selenium系列文章汇总

30个MySQL数据库常用小技巧,吐血整理SQL从入门到入魔之初入门SQL从入门到入魔之数据库基本操作SQL从入门到入魔之select简单查询

MySQL之数据库基本操作语句

MySQL之创建表以及数据库增删改操作

MySQL之数据库基本查询语句

MySQL之数据库多表查询

速看,APP测试之ADB最全指南!

APP测试之Monkey压力测试(一)

APP测试之Monkey压力测试(二)

1f3716bb35bea3e37a13f85acf16575b.png快来星标 置顶 关注

后台回复 资源 取干货

1a20c7f56a5342969f2ac65814271426.png

f2d83ebb69c415b8a89beb386a699e22.png

1a20c7f56a5342969f2ac65814271426.png

dbf5a6a4215974911dccbbb8d0256047.png

想要获取相关资料和软件 ?

Python交流Q群:604469740

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值