-
python列表中的值可以重复吗_获取python的list中含有重复值的index方法
2020-11-29 22:00:44list.index( )获得值的索引值,但是如果list中含有的值一样,例如含有两个11,22,这样每次获得的都是第一个值的位置。那么怎么去解决这个问题呢?下面的程序对这个问题做了一定的解答#!/usr/bin/env python# -*- ...关于怎么获得,我想其实网上有很多答案。
list.index( )获得值的索引值,但是如果list中含有的值一样,例如含有两个11,22,这样每次获得的都是第一个值的位置。
那么怎么去解决这个问题呢?
下面的程序对这个问题做了一定的解答
#!/usr/bin/env python
# -*- coding: utf-8 -*-
# @Author : SundayCoder-俊勇
# @File : listlearn.py
# 怎么获得list中的相同值的索引值
# 请看下列程序
s = [11, 22, 33, 44, 22, 11]
print s.index(11)
# 此时输出0
print s.index(22)
# 此时输出1
# 那怎么才能得到11,22相同的值的索引值呢?
# 有人说用dict(字典),这个方法也可以
# 有人说用defaultdict
# 程序如下:
from collections import defaultdict
d = defaultdict(list)
for k,va in [(v,i) for i,v in enumerate(s)]:
d[k].append(va)
print d
# 输出的结果如下:defaultdict(, {33: [2], 11: [0, 5], 44: [3], 22: [1, 4]})
# 但是有没有一个更加简单的方法呢?
# 有的,那就是”偷梁换柱“,用一个s1来复制s。
s1 = s
i = s1.index(11)
s1[i]=55
# 替换s1的11为55(不一定是55只要是列表中没有的数值就可以)
# 再打印s1
print s1
# 输出[55, 22, 33, 44, 22, 11]
# 下一步可以得到11的位置了
print s1.index(11)
# 输出为:5
以上这篇获取python的list中含有重复值的index方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们。
本文标题: 获取python的list中含有重复值的index方法
本文地址: http://www.cppcns.com/jiaoben/python/231227.html
-
python列表中的值可以重复吗_Python列表:在列表中具有重复值的heapq.nlargest索引...
2020-11-29 22:00:44Suppose I have a list of numbers:my_list = [3, 8, 4, 2, 8, 1, 1, 2, 5, 1]I now want to find the indices of the 2 greatest numbers in this list. So, I try:import heapqmax_vals = heapq.nlargest(2, my_li...Suppose I have a list of numbers:
my_list = [3, 8, 4, 2, 8, 1, 1, 2, 5, 1]
I now want to find the indices of the 2 greatest numbers in this list. So, I try:
import heapq
max_vals = heapq.nlargest(2, my_list)
index1 = my_list.index(max_vals[0])
index2 = my_list.index(max_vals[1])
print index1
print index2
Here, both index1and index2 are 1. This is because max_vals has 8 for both values, and the my_list.index() just searches for the first instance of 8.
How can I get the indices of the top 2 values in this case, such that index1 is 1 as before, but index2 is now 4, corresponding to the other 8 in the list?
On a side note, it seems rather inefficient to find the maximum value in a list, and then subsequently find the index of that value. Is there not a way to achieve this in one sweep of the list?
Thank you.
解决方案
You can apply heapq.nlargest on enumerate(list)"
>>> import heapq
>>> data = heapq.nlargest(2, enumerate(my_list), key=lambda x:x[1])
>>> indices, vals = zip(*data)
>>> indices
(1, 4)
>>> vals
(8, 8)
-
python列表元素可以重复吗_Python列表中的元素重复
2021-02-10 00:48:32在某些情况下,我们需要重复列表中的值。值的这种重复可以通过以下方式在python中实现。使用嵌套的for循环这是一种简单的方法,其中选择每个元素,通过内部for循环创建其重复项,然后将它们都传递给外部for循环。...在某些情况下,我们需要重复列表中的值。值的这种重复可以通过以下方式在python中实现。
使用嵌套的for循环
这是一种简单的方法,其中选择每个元素,通过内部for循环创建其重复项,然后将它们都传递给外部for循环。
示例# Given list
listA = ['Mon', 'Tue', 9, 3, 3]
print("Given list : ",listA)
# Adding another element for each element
Newlist = [i for i in listA for n in (0, 1)]
# Result
print("New list after duplication: ",Newlist)
输出结果
运行上面的代码给我们以下结果-Given list : ['Mon', 'Tue', 9, 3, 3]
New list after duplication: ['Mon', 'Mon', 'Tue', 'Tue', 9, 9, 3, 3, 3, 3]
使用itertools
itertools模块处理可迭代对象中的数据操作。在这里我们应用chain.from_iterables其中
示例import itertools
# Given list
listA = ['Mon', 'Tue', 9, 3, 3]
print("Given list : ",listA)
# Adding another element for each element
Newlist = list(itertools.chain.from_iterable([n, n] for n in listA))
# Result
print("New list after duplication: ",Newlist)
输出结果
运行上面的代码给我们以下结果-Given list : ['Mon', 'Tue', 9, 3, 3]
New list after duplication: ['Mon', 'Mon', 'Tue', 'Tue', 9, 9, 3, 3, 3, 3]
与减少
reduce函数将作为参数传递给它的特定函数应用于作为第二参数传递给它的所有列表元素。我们将其与add函数一起使用,该函数会添加列表中每个元素的重复元素。
示例from functools import reduce
from operator import add
# Given list
listA = ['Mon', 'Tue', 9, 3, 3]
print("Given list : ",listA)
# Adding another element for each element
Newlist = list(reduce(add, [(i, i) for i in listA]))
# Result
print("New list after duplication: ",Newlist)
输出结果
运行上面的代码给我们以下结果-Given list : ['Mon', 'Tue', 9, 3, 3]
New list after duplication: ['Mon', 'Mon', 'Tue', 'Tue', 9, 9, 3, 3, 3, 3]
-
python字典键值对的值可以重复吗_python列表中字典按指定相同的键值对合并到一个列表中...
2020-11-30 09:03:47类似数据,列表中每一个字典是一条数据,如何按天将数据分割,将每天的数据保存到一个列表中,每天的数据量不相同也就是每天数据的行数不同[{'date':2019-08-17,'type':'旅游','over_...类似数据,列表中每一个字典...类似数据,列表中每一个字典是一条数据,如何按天将数据分割,将每天的数据保存到一个列表中,每天的数据量不相同也就是每天数据的行数不同[{'date':2019-08-17,'type':'旅游','over_...
类似数据,列表中每一个字典是一条数据,如何按天将数据分割,将每天的数据保存到一个列表中,每天的数据量不相同也就是每天数据的行数不同
[ {'date':2019-08-17, 'type':'旅游', 'over_im':'12365'},
{'date':2019-08-17, 'type':'娱乐', 'over_im':'11234'},
{'date':2019-08-17, 'type':'工作', 'over_im':'9754'},
{'date':2019-08-17, 'type':'休闲', 'over_im':'8634'},
{'date':2019-08-17, 'type':'生活', 'over_im':'3256'},
{'date':2019-08-18, 'type':'生活', 'over_im':'15342'},
{'date':2019-08-18, 'type':'旅游', 'over_im':'12332'},
{'date':2019-08-18, 'type':'玩乐', 'over_im':'11232'},
{'date':2019-08-18, 'type':'休闲', 'over_im':'10432'},
{'date':2019-08-18, 'type':'生活', 'over_im':'9532'},
{'date':2019-08-18, 'type':'工作', 'over_im':'7632'},
{'date':2019-08-18, 'type':'游戏', 'over_im':'5422'},
{'date':2019-08-19, 'type':'工作', 'over_im':'9942'},
{'date':2019-08-19, 'type':'游戏', 'over_im':'7842'},
{'date':2019-08-19, 'type':'休闲', 'over_im':'6213'},
{'date':2019-08-19, 'type':'生活', 'over_im':'5267'},
{'date':2019-08-19, 'type':'玩乐', 'over_im':'2445'}
...]
]
展开
-
python列表可以不按顺序查找元素吗_查找元素顺序无关紧要但重复列表元素有意义的重复列表...
2021-02-03 16:15:47我遇到了一个奇怪的问题,我需要找到重复的项集合,这些集合的顺序无关紧要,但集合中是否存在重复值却很重要。例如,假设我有以下列表:lol = [['red'],['blue', 'orange'],['orange', 'red'],['red', 'orange'],['... -
python中键可以重复吗_在Python中用重复的键制作字典
2020-12-21 14:04:32我有以下列表,其中包含具有不同值的重复汽车注册号。我想把它转换成一本字典,接受这多个汽车登记号码的钥匙。到目前为止,当我尝试将list转换为dictionary时,它删除了其中一个键。我怎样用重复的钥匙编一本字典?... -
python字典的键可以是数字吗_python字典的键可以是列表吗
2020-12-30 06:16:12python字典的键字典中的值没有任何限制, 可以是任意Python对象,即从标准对象到用户自定义对象皆可,但是字典中的键是有类型限制的。不允许一个键对应多个值必须明确一条原则:每个键只能对应一个项。也就是说:... -
python列表中的元素可以是集合数据吗_举例讲解Python中的list列表数据结构用法...
2020-12-13 11:36:52在使用for循环之前,我们需要一个东西保存循环的值,最好的方法是使用一个列表,列表就是按照顺序保存数据的容器,不是很复杂,就是一种新的语法而已,结构像下面这样:?list以 [ 号开头,里面的元素以 , 号分隔,像... -
python 字典的值可以为集合吗_Python 集合(Set)、字典(Dictionary)
2021-01-28 21:06:54集合(Set)集合是无序的,无序也就没有索引,不能进行索引相关的操作。无序,python解释器就不能通过索引(位置)区分集合中的...a={1,1,3}print(a) #{1,3} 会自动去掉重复的元素a={1,"ok"} #数据类型可以不同print(a) ... -
python中字典一个键可以对应多个值吗_Python 字典的一键多值,即一个键对应多个值...
2021-01-12 02:57:46#字典的一键多值print'方案一 list作为dict的值 值允许重复'd1={}key=1value=2d1.setdefault(key,[]).append(value)value=2d1.setdefault(key,[]).append(value)print d1#获取值print '方案一 获取值'print list(d1... -
go slice获取唯一值_Excel VBA 8.4 Python中有集合直接获取唯一值,那Exce中可以吗?...
2021-01-19 23:45:34前景提要(文末提供源码下载)相信现在很多的小伙伴们都有接触过Python,在学习Python的时候,我们都学到了列表和集合,Python中的集合有一个特性,就是数据不重复,有点类似Excel中的字典,那么Excel中是否存在这样的... -
python字典的键可以是元组吗_python字典的键可以是元组吗
2020-12-30 06:16:12python字典的键字典中的值没有任何限制, 可以是任意Python对象,即从标准对象到用户自定义对象皆可,但是字典中的键是有类型限制的。不允许一个键对应多个值必须明确一条原则:每个键只能对应一个项。也就是说:... -
Python的十七个骚操作,你都学会了吗?(下)
2021-01-22 09:37:156 反转列表 7 转置二维数组 8 链式比较 推荐一个Python学习交流的裙,有什么不懂的都可以在裙里问:610 380 249 9 链式函数调用 ...16 列表中最小和最大值的索引 17 移除列表中的重复元素 ... -
你真的了解Redis的list数据结构吗--redis之面试官爱我系列(2)
2020-05-10 18:48:02List(列表) 各位好我是霜华,今天将一个在开发中很常用的一个数据结构(用于消息队列...如果值全部移除,对应的健也就消失了(⼈话:容器没东⻄了,容器就销毁) 列表最多可存储2^32-1 元素(4294967295 每个类表可存 -
python会使电脑变卡吗_用 Python 把电脑变钢琴
2020-12-08 20:29:42一段音频可以被编码为一组数值的数组(或者列表),像这样:我们可以在数组中每隔一秒拿掉一秒的值来将这段音频的速度变成两倍:如此我们不仅将音频的长度减半了,而且我们还将它的频率翻倍了,这样使得它拥有比原来更... -
Python的骚操作,继续更新
2020-10-12 10:22:3016 列表中最小和最大值的索引 17 移除列表中的重复元素 这些是你想要的吗? 关注小编后私信【1】可以得到哦(私信方法:点击我头像进我主页有个上面有个私信按钮) 更多精彩内容 https://mz.tanzhouedu.com/? -
你必须知道的495个C语言问题
2015-10-16 14:14:281.31 对于没有显式初始化的变量的初始值可以作怎样的假定?如果一个全局变量初始值为“零”,它可否作为空指针或浮点零? 1.32 下面的代码为什么不能编译?intf(){chara[]="Hello,world!";} *1.33 下面的初始化有... -
你必须知道的495个C语言问题(高清版)
2010-03-31 16:24:091.31 对于没有显式初始化的变量的初始值可以作怎样的假定?如果一个全局变量初始值为“零”,它可否作为空指针或浮点零? 18 1.32 下面的代码为什么不能编译? intf(){char a[]=Hello, world!;} 18 *1.33 下面... -
JS Dict 字典
2019-04-14 13:40:40字典(dictory)是一种以键-值对...集合、字典、散列表都可以存储不重复的值,它们之间有什么区别吗? 集合:集合感兴趣的是每个值本身,并把它当做主要元素。集合表示一组不相同的元素(不重复的元素)。集合以[值... -
《你必须知道的495个C语言问题》
2010-03-20 16:41:181.31 对于没有显式初始化的变量的初始值可以作怎样的假定?如果一个全局变量初始值为“零”,它可否作为空指针或浮点零? 18 1.32 下面的代码为什么不能编译? intf(){char a[]="Hello, world!";} 18 *1.33 ... -
超级有影响力霸气的Java面试题大全文档
2012-07-18 09:47:04在实现中,assertion就是在程序中的一条语句,它对一个boolean表达式进行检查,一个正确程序必须保证这个boolean表达式的值为true;如果该值为false,说明程序已经处于不正确的状态下,系统将给出警告或退出。... -
自己研究的一套微架构,在Angular项目里用,拿出来探讨探讨
2020-12-30 23:25:29// 池子里都是用BehaviorSubject装起来的值,一个键只能对应一个值 static pool: {[key: string]: BehaviorSubject<any>} = {}; // 用来注入键值 static set(key, value) {} // 可以直接获取... -
Day10零基础入门python第016讲课后测试题及答案:序列
2020-05-10 19:02:370. 我们根据列表、元祖和字符串的共同特点,把它们三统称为什么? 共同特点: 都可以通过索引得到每一个元素 索引值都从0开始 都可切片 有共同的操作符(重复操作符、拼接操作符、成员关系操作符) 1. 请问分别... -
【DW组队学习—LeetCode】day11
2021-01-22 22:21:21136. 只出现一次的数字 给定一个非空整数数组,除了...已知表中重复元素也只出现2次,所以可以准备一个列表,第一次出现时将元素放进该列表,第二次出现移出该列表,最后返回列表值 代码: class Solution: def sing -
python学习记录(16)
2020-12-08 23:22:462)默认索引值总是从0开始(当然灵活的Python还支持负数索引) 3)可以通过分片的方法得到一个范围内的元素的集合 4)有很多共同的操作符(重复操作符、拼接操作符、成员关系操作符) 2. 请问分别使用什么BIF,可以... -
第048讲:魔法方法:迭代器
2020-08-02 00:22:38目录 0. 请写下这一节课你学习到的内容:格式不限,回忆并复述是加强记忆的好...因为我们耳熟能详的容器像列表,字典,元组都是可以存放数据的,而迭代器就是实现了__next__()方法的对象(用于遍历容器中的数据)。 2. -
[小甲鱼] 零基础入门python第016讲课后测试题及答案:序列!序列!
2018-11-05 10:32:28测试题: 0. 我们根据列表、元祖和字符串的共同特点,把它们三统称为什么?... 根据一定的规则重复生成我们想要的列表 3. 你认为调用 max('I love FishC.com') 会返回什么值?为什么? v,AS... -
C# formwork 音乐播放盒源码
2012-05-31 08:24:56独立完成项目-----音乐播放盒 ... 前辈们说这样的东西可以拿出去找工作了, 我笑了,真够吗? 自我感觉比较欠缺的地方好多好多,希望老师能满足我的求知欲望,多教点东西给我吧 在校学生: 小枪
-
vue3从0到1-超详细
-
【邻接矩阵】62 邻接矩阵:求指定顶点的(出)度
-
分布式事务之解决方案(XA和2PC)
-
2021/2/26:Django思维导图
-
用于认知无线电系统的光控可重构带隙UWB天线
-
智能停车场云平台(附vue+SpringBoot前后端项目源码)
-
名称空间是开放的
-
【Java基础】Java Math类 技术详解
-
6个境界,从产品到人性,你打通了几个?
-
一种新颖的古代硬币状分形多频带天线,用于无线应用
-
RapidScada从入门到精通
-
Terahertz optical asymmetric demultiplexer based tree-net architecture for all-optical conversion scheme from binary to its other 2n radix based form
-
C++MFC开发远程控制软件教程(VS2013)
-
vue-cli3移动端自适应配置 Vant组件库
-
MySQL NDB Cluster 负载均衡和高可用集群
-
使用Nickel开发Web应用:从第一行代码到Heroku部署
-
退火对ZnO薄膜晶体结构和ZnO/p-Si异质结光电性质的影响
-
要啥自行车
-
用于无线电力传输小型化应用的紧凑型整流天线设计
-
WLAN的三极化和多频带天线