在本教程中,我们将编写一个程序,该程序将列表中具有与第二个元素相同的元素的所有元组分组。让我们看一个例子来清楚地理解它。

输入值[('Python', 'nhooos'), ('Management', 'other'), ('Django', 'nhooos'), ('React',

'nhooos'), ('Social', 'other'), ('Business', 'other')]

输出结果{'nhooo': [('Python', 'nhooos'), ('Django', 'nhooos'), ('React', 'nhooos')],

'other’: [('Management', 'other'), ('Social', 'other'), ('Business', 'other')]}

我们必须从列表中对元组进行分组。让我们看看解决问题的步骤。用必需的元组初始化一个列表。

创建一个空字典。

遍历元组列表。检查元组的第二个元素在字典中是否已经存在。

如果已经存在,则将当前元组追加到其列表中。

否则,使用当前元组的列表来初始化键。

最后,您将获得具有所需修改的字典。

示例# initializing the list with tuples

tuples = [('Python', 'nhooos'), ('Management', 'other'), ('Django', 't

ialspoints'), ('React', 'nhooos'), ('Social', 'other'), ('Business', 'othe

r')]

# empty dict

result = {}

# iterating over the list of tuples

for tup in tuples:

# checking the tuple element in the dict

if tup[1] in result:

# add the current tuple to dict

result[tup[1]].append(tup)

else:

# initiate the key with list

result[tup[1]] = [tup]

# priting the result

print(result)

输出结果

如果运行上面的代码,则将得到以下结果。{'nhooos': [('Python', 'nhooos'), ('Django', 'nhooos

('React', 'nhooos')], 'other': [('Management', 'other'), ('Social', 'other

'), ('Business', 'other')]}

我们使用defaultdict跳过上述程序中的if条件。让我们使用defaultdict解决它。

示例# importing defaultdict from collections

from collections import defaultdict

# initializing the list with tuples

tuples = [('Python', 'nhooos'), ('Management', 'other'), ('Django', 't

ialspoints'), ('React', 'nhooos'), ('Social', 'other'), ('Business', 'othe

r')]

# empty dict with defaultdict

result = defaultdict(list)

# iterating over the list of tuples

for tup in tuples:

result[tup[1]].append(tup)

# priting the result

print(dict(result))

输出结果

如果运行上面的代码,则将得到以下结果。{'nhooos': [('Python', 'nhooos'), ('Django', 'nhooos

('React', 'nhooos')], 'other': [('Management', 'other'), ('Social', 'other

'), ('Business', 'other')]}

结论

您可以按自己喜欢的方式解决不同的问题。我们在这里看到了两种方式。如果您对本教程有任何疑问,请在评论部分中提及。

python第2位的值_Python组通过匹配元组列表中的第二个元组值相关推荐

  1. python程序退出后保存变量_Python将变量存储在一个列表中,每次程序重新启动时都会保存这些变量...

    我正为我的频道开发一个Python Twitch IRC Bot,它似乎很简单,但我却被困在一个看似简单的任务上.我有一个积分系统,我认为它是有效的,但我发现每次我重新启动程序,包含用户余额的列表都会 ...

  2. python输入一组数字存到列表_Python如何使用输入传递多个值并将它们存储在一个列表中(简单版本),python,怎么,input,传入,储存,到...

    Python如何使用输入传递多个值并将它们存储在一个列表中(简单版本),python,怎么,input,传入,储存,到 发表时间:2020-08-20 当传入多个值时,需要使用split()函数来切割 ...

  3. python获取字典的值_Python:如何从pandas系列中获取字典中的值

    我是python的新手,并试图从字典中获取值,其中键在数据帧列(pandas)中定义.我搜索了很多,最接近的是a 在下面的链接中的问题,但它没有答案. 所以,在这里,我试图找到相同类型的问题的答案. ...

  4. python里面的类和对象_Python中类和对象在内存中是如何保存?

    类以及类中的方法在内存中只有一份,而根据类创建的每一个对象都在内存中需要存一份,大致如下图: 如上图所示,根据类创建对象时,对象中除了封装 name 和 age 的值之外,还会保存一个类对象指针,该值 ...

  5. 列表根据下标取值_Python基础知识点——list(列表)讲解

    前言 定义:列表是一种可变的.有序的数据结构,可以随时添加和删除其中的元素. 列表非常适合利用顺序和位置定位某一元素,尤其是当元素的顺序或内容经常发生改变时.与字符串不同,列表是可变的.你可以直接对原 ...

  6. python 将单词分割成字母_Python基于分隔符单词拆分列表

    我有一个包含各种字符串值的列表.每当我看到WORD时,我想拆分列表.结果将是一个列表列表(将是原始列表的子列表),其中只包含一个WORD实例,我可以使用循环来实现这一点但是有更多的pythonic方法 ...

  7. python求满足条件的值的个数_计算列表中满足特定条件的值的数目

    我有以下清单mylist = ['0.976850566018849', '1.01711066941038', '0.95545901267938', '1.13665822176679', '1. ...

  8. python从键盘输入若干学生姓名、保存在字符串列表中_Python基础语法练习题

    1.输出当前时间 #答案代码 #strftime 将datetime 格式转成字符串格式 from datetime import datetime now=datetime.now() print( ...

  9. python中怎么比较两个列表的大小_Python:找到两个列表中存在的给定长度的公共子列表...

    我必须找到一个有效的python代码来执行以下操作: 查找n包含在两个给定列表中的至少一个(如果存在的话)连续元素序列. 例如,使用n=3,这两个列表的结果将是['Tom', 'Sam', 'Jill ...

最新文章

  1. 【Android NDK 开发】NDK 交叉编译 ( Ubuntu 中交叉编译动态库 | Android Studio 中配置使用第三方动态库 )
  2. UVALive 6467 Strahler Order 拓扑排序
  3. HTML5中使用SpeechSynthesisAPI实现语音合成
  4. Ajax中GET和POST的区别
  5. 池化层在全连接层之间吗,了解最大池化层之后的全连接层的尺寸
  6. 在JDK 10中不可变与不可修改
  7. 【java】java 如何不使用第三个变量来交换两个数的值
  8. Java实验8 T1.编程包含一个标签和一个按钮,在“你好”和“再见”之间切换
  9. java程序员 英文简历_Java程序员英文简历
  10. MinGW gcc下载链接及sjlj、dwarf、seh异同以及gcc安装
  11. 怎样用计算机计算矩阵,【活用工具】教你如何用卡西欧fx82es计算机计算复数 矩阵等...
  12. 网页中超长图片转成pdf文档
  13. ISO 认证是哪三个?
  14. 美国生活第二个月照片(2)
  15. 在大裁员背景下,一个年薪百万的offer有多容易
  16. Google官方Activity介绍
  17. C++ Win32程序编写入门
  18. 基金使用计划 数学建模 matlab,基金使用计划(数学建模).ppt
  19. 苹果手机怎么编辑word文档_Word文档怎么转化为pdf格式?办公必备方法!
  20. 王者荣耀 是什么语言编写的

热门文章

  1. 服务器最小化安装后的优化脚本
  2. nls_lang.sh: 114: [[: not found
  3. mysql 1130 localhost_解决1130 Host 'localhost' is not allowed to connect to this MySQL server
  4. android textview表情,Android开发(16)-TextView显示表情图像和文字
  5. php执行npm命令_npm系列之命令执行
  6. php 扩展 返回字符串,基于PHP7的PHP扩展开发之四(字符串的处理)
  7. 星星排序python_python中怎么实现星星排列
  8. php_flag .htaccess,Apache服务器中.htaccess文件的实用配置示例集锦
  9. mysql类 php100_php mysql 类
  10. struct和typedef struct区别