old_lst = [2, 2, 1, 1, 3, 4] new_lst = list(set(old_lst)) new_lst.sort(key=old_lst.index) print(new_lst) new_lst1 = [] for i in old_lst: if i not in new_lst1: new_lst1.append(i) print(new_lst1) 1 第一种方法利用了集合 2 第二种方法利用了遍历查找…
java可以用Collections.shuffle(List)来实现,python怎么实现呢? python要利用random模块的shuffle方法 代码如下: import random x = [i for i in range(10)] print(x) random.shuffle(x) print(x)…
用Python将一个列表分割成小列表 2018年01月15日 11:09:25 幸福丶如此 阅读数:16842   版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csdn.net/m0_37886429/article/details/79062318 方法一 def list_of_groups(init_list, childern_list_len): ''' init_list为初始化的列表,childern_list_len初始化列表中的几个数据组成一…
raw_list = [ [ 'CS_SUPP_INFO', 'A', '1'], [ 'CS_SUPP_INFO', '1', 'A'], [ 'CS_SUPP_INFO', '1', 'A'], [ 'CS_SUPP_INFO', 'A', '1'], [ 'CS_SUPP_INFO', 'A', '2'], [ 'CS_SUPP_INFO', 'A', '2'], [ 'CS_SUPP_INFO', 'A', '3'] ] # 排序,只有排序后,下面用集合去重才能排除子列表中子元素顺序的影…
一.循环去重   二.用 set() 去重 1.set()对list去重 2.list 是有序的,用 sort() 把顺序改回来  三.利用 dict 的属性来去重 1.用 dict 的 fromkeys + keys 来去重 2.拆分 四.最后总结 也有很多其他方式,这里是三种典型的.简洁的.   优 劣 第一种 计算过程简单明了 代码复杂 第二.三种 需要对Python各个基础数据的特性和各自之间的转换有所了解. 代码简单…
item1 = ["lowman", "isbusy"] item2 = ",".join(item1) # 根据实际需要使用相应的分隔符连接列表元素,如 , : ; 或者空字符串 print(item2) print(type(item2)) 输出:  "lowman,isbusy" 注意: 1. 列表里面的元素必须全是字符串才可以使用join()进行拼接   2. 返回的是一个字符串…
1.使用内置函数set() set() 函数创建一个无序不重复元素集,可进行关系测试,删除重复数据,还可以计算交集.差集.并集等. 2.创建一个空的列表进行比较,把不重复的元素添加到新的列表中 #coding=utf-8 l = [1, 2, 4, 3, 2, 3, 5] new_l = [] for i in l: if i not in new_l: new_l.append(i) print new_l…
>>> l=[,,,,,,] >>> list(set(l)) [, , , ] >>>…
import random nums = [, , , , , , ] random.shuffle(nums) print(nums)…
mailto = ['cc', 'bbbb', 'afa', 'sss', 'bbbb', 'cc', 'shafa'] addr_to = list(set(mailto)) addr_to.sort(key = mailto.index)…
第3章 学习目标: 列表是什么以及如何使用列表元素.列表让你能够在一个地方存储成组的信息,其中可以只包含几个元素,也可以包含数百万个元素.列表是新手可直接使用的最强大的Python功能之一,它融合了众多重要的编程概念. 3.1 列表是什么 列表由一系列按特定顺序排列的元素组成.你可以创建包含字母表中所有字母.数字0~9或所有家庭成员姓名的列表:也可以将任何东西加入列表中,其中的元素之间可以没有任何关系.鉴于列表通常包含多个元素,给列表指定一个表示复数的名称(如letters.digits或nam…
我们在数据处理时,经常需要用到对重复数据进行过滤处理.  对数据去重有两种处理方式,如下: 1.对重复数据去重,并且会自动排序 使用函数  set # 列表去重 list_a = [6, 6, 5, 1, 2, 2, 3, 4, 4, 4, 6, 7, 8, 8, 8, 10] # 仅去重 list_aa = set(list_a) print(list_aa) 结果如下: 细心的小伙伴就会发现,不仅去重了,还对数据进行了重新排序. 2.对数据去重不改变原有顺序 # 列表去重 list_a =…
# python 使用set对列表去重,并保持列表原来顺序 list1 = ['cc', 'bbbb', 'afa', 'sss', 'bbbb', 'cc', 'shafa'] for item in list1: print('word: %6s index: %2s' % (item, list1.index(item))) print('==========================') list2 = list(set(list1)) list2.sort(key=list1.i…
题目: 列表去掉重复元素,并保持原来的排序 方法一: # 待处理的列表 L1 = [111,44,55,33,22,11] # 利用集合set的属性,去重 s1 = set(L1) # 把集合转化为列表 L2 = list(s1) # 按照 L1中的index进行排序 L2.sort(key = L1.index) # 得到去重并且维持排序的列表 print(L2) 方法二: # 待处理的列表 L1 = [111,44,55,33,22,11] # 定义一个空列表 L2 = [] # 通过遍历L…
1. 列表去重 li = [] for item in my_list: if item not in li: li.append(item) 2.集合去重 list(set(my_list)) 3.字典去重 dict1 = dict.fromkeys(my_list, '') li = dict1.keys…
列表去重 1.方法1 借助一个临时列表 ids = [1,2,3,3,4,2,3,4,5,6,1] news_ids = [] for id in ids: if id not in news_ids: news_ids.append(id) print news_ids 2.方法2 使用set方法进行去重,此方法处理简单但是不会保留之前的顺序 ids = [1,4,3,3,4,2,3,4,5,6,1] ids = set(ids) 3.方法3 使用匿名函数lambda和reduce函数处理 i…
最近面试中出现频率比较高的字符串和列表的去重pstr = 'abcadcf'# 字符串去重# 1.使用集合 --没有保持原来的顺序 print(set(pstr)) # 2.使用字典 -- 没有保持原来的顺序 print({}.fromkeys(pstr).keys()) # 3.使用循环遍历法 -- 代码不够简洁,不高端 a = [] for i in range(len(pstr)): if pstr[i] not in a: a.append(pstr[i]) print(a) # 列表去…
一.方法1  代码如下 复制代码 ids = [1,2,3,3,4,2,3,4,5,6,1] news_ids = [] for id in ids:     if id not in news_ids:         news_ids.append(id) print news_ids 思路看起来比较清晰简单 ,也可以保持之前的排列顺序. 二.方法2 通过set方法进行处理  代码如下 复制代码 ids = [1,4,3,3,4,2,3,4,5,6,1] ids = list(set(ids…
一.方法1  代码如下 复制代码 ids = [1,2,3,3,4,2,3,4,5,6,1] news_ids = [] for id in ids:     if id not in news_ids:         news_ids.append(id) print news_ids 思路看起来比较清晰简单 ,也可以保持之前的排列顺序. 二.方法2 通过set方法进行处理  代码如下 复制代码 ids = [1,4,3,3,4,2,3,4,5,6,1] ids = list(set(ids…
一.列表 =====================================================1.列表的定义及格式: 列表是个有序的,可修改的,元素用逗号隔开,用中括号包围的序列. 格式:变量名 = [ 元素1,元素2,元素3...] 作用:存储多个数据 列表推导式:重点 '''列表推导式''' list_t = [i for i in range(10)] print(list_t) # [0,1,2,3,4,5,6,7,8,9] '''实例''' print('实例:'…
Table of Contents generated with DocToc python系列-字符串.列表.元组的操作 序列的访问及运算符 序列通用操作 访问单个元素 切片访问一部分元素 序列的复制 字符串 字符串常用函数 数字转化成字符串 列表和元组 列表(list) 列表常用函数 字符串和列表互操作 元组 创建元组 列表和元组表示二维表 随机函数库(random) python系列-字符串.列表.元组的操作 序列的访问及运算符 序列是为满足程序中复杂的数据表示,python支持组合数据类…
一.列表 =====================================================1.列表的定义及格式: 列表是个有序的,可修改的,元素用逗号隔开,用中括号包围的序列. 格式:变量名 = [ 元素1,元素2,元素3...] 作用:存储多个数据 列表推导式:重点 1 '''列表推导式''' 2 list_t = [i for i in range(10)] 3 print(list_t) # [0,1,2,3,4,5,6,7,8,9] 4 5 '''实例''' 6…
列表 元组 字典 集合的区别是python面试中最常见的一个问题.这个问题虽然很基础,但确实能反映出面试者的基础水平. (1)列表 什么是列表呢?我觉得列表就是我们日常生活中经常见到的清单.比如,统计过去一周我们买过的东西,把这些东西列出来,就是清单.由于我们买一种东西可能不止一次,所以清单中是允许有重复项的.如果我们扩大清单的范围,统计我们过去一周所有的花费情况,那么这也是一个清单,但这个清单里会有类别不同的项,比如我们买东西是一种花费,交水电费也是一种花费,这些项的类型是可以使不同的.pyt…
定义:1.列表(list)是由一系列特定顺序排列的元素组成,可以包含字母,数字或者将任何东西加入列表. 2.列表的标识符号为 [ ],函数名称为list 3.列表是有序的 相关概念: 元素:列表中的值称之为元素,元素之间用逗号隔开 下标:列表中每个元素对应一个下标,下标自左往右从0开始,或者自右往左从-1开始 一. 列表的简单操作 1.创建一个空列表 lists = [ ]   或者  lists = list() 2.创建一个有若干元素的列表 lists = [1,2,3,4,5,6,7,8]…
Python 的列表解析式,集合解析式,字典解析式 这三种都是 python 里面的语法糖. 语法糖,Syntactic Sugar,就是为了写程序时候少出错,发明的一些简便的方法,但不影响这个语法的功能. (我第一反应是 HP 里面的 chocolate frog,哈哈哈) 1. 列表解析式 list comprehension 通常我们定义有内容 list 时,想对内容进行一些计算再放进去,除了使用 for 循环迭代出列表内的元素,进行计算再放进去,还可以在列表内直接写解析式计算. 1.1…
开发中对数组.列表去重是非常常见的需求,对一个list中的id进行去重,有下面几种方法,前面两种方法不能保证顺序, 后面两种方法可以保持原来的顺序. 下面的代码都在Python3下测试通过, Python2下请自行测试 1. 使用set的特型,python的set和其他语言类似, 是一个无序不重复元素集 1 2 3 4 orgList = [1,0,3,7,7,5] #list()方法是把字符串str或元组转成数组 formatList = list(set(orgList)) print (f…
[转]Python之列表生成式.生成器.可迭代对象与迭代器 本节内容 语法糖的概念 列表生成式 生成器(Generator) 可迭代对象(Iterable) 迭代器(Iterator) Iterable.Iterator与Generator之间的关系 一.语法糖的概念 “语法糖”,从字面上看应该是一种语法.“糖”,可以理解为简单.简洁.其实我们也已经意识到,没有这些被称为“语法糖”的语法,我们也能实现相应的功能,而 “语法糖”使我们可以更加简洁.快速的实现这些功能. 只是Python解释器会把这…
因为重要,所以放前面 列表去重 l1 = [1, 2, 3, 4, 5] l2 = [3, 4, 5, 6, 7] set = list(set(l1 + l2)) # set自动去重,然后变成list类型 print(set) # [1, 2, 3, 4, 5, 6, 7] 1. id    is    == == 是比较的两边的数值是否相等,而 is 是比较的两边的内存地址是否相等. 如果内存地址相等,那么这两边其实是指向同一个内存地址. l1 = [1, 2, 3] l2 = [1, 2,…
Python对list去重 方法一 新建新的列表,利用not in命令去重.这种方法看起来不够简便,但是保留了原列表中的顺序.代码如下: list1 = [1,2,3,4,1,1,2,5,4,3] list2 = [] for i in list1: if i not in list2: list2.append(i) print(list2) 这样最终的输出就为:[1, 2, 3, 4, 5] 方法二 利用set的自动去重功能,这种方法就是将列表先转化为集合再进一步转化为列表,利用了集合的去重…
  1.在python中,最基本的数据结构是序列,序列中每一个元素被分配一个序号,即元素的位置,称为索引.索引从0开始,-1表示倒数第一个元素,-2表示倒数第二个元素,因此既可以是从前到后开始对元素进行访问,也可以从后往前对元素进行访问. 2.python序列中有6种内建的序列:列表.元组.字符串.Unicode字符串.buffer对象,xrange对象.其中有两种常见类型:列表和元组. 列表和元组的主要区别在于,列表可以修改,元组则不能.一般来说,在几乎所有的情况下列表都可以替代元组.一个例外…