纯干货-个人整理——字典和列表的不同点和相同点

2023-10-14 23:59

本文主要是介绍纯干货-个人整理——字典和列表的不同点和相同点,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

1. 字典和列表的不同点

1、列表中的元素都有自己明确的“位置”,即使看似相同的元素,只要在列表中所处的位置不同,它们就是两个不同的元素。比如:

# 列表
1 student1 = ['小明','小红','小刚']
2 student2 = ['小刚','小明','小红']
3 print(student1 == student2)  # False# 字典
4 scores1 = {'小明':95,'小红':90,'小刚':100}
5 scores2 = {'小刚':100,'小明':95,'小红':90}
6 print(scores1 == scores2)    #True

2、字典相对列表显得随和,调动顺序也不影响。因为列表中的数据是有序排列的,字典中的数据是随机排列的。

  • 总结:
    列表有序,要用偏移量定位,
    字典无序,通过唯一的键来取值

2.字典和列表的相同点

  • 1、在列表和字典中,如果要修改元素,都可用赋值语句来完成
1 list1 = ['小明','小红','小刚','小美']
2 list1[1] = '小蓝'
3 print(list1)
4 # ['小明','小红','小刚','小美','小蓝']5 dict1 = {'小明':'男'}
6 dict1['小明'] = '女'
7 print(dict1)
8 # {'小明':'女'}
  • 2、支持任意嵌套:列表可嵌套其他列表和字典,字典也可嵌套其他字典和列表
  • 一、列表嵌套列表
    举例:一个以四人为单位的学习小组,列表的形式可以写成:
1 students = [['小明','小红','小刚','小美'],['小强','小兰','小伟','小芳']]

students 这个列表是由两个子列表组成的,如何取出 ‘小芳’ ?

  • 提取这种多级嵌套的列表/字典时,要一层一层的取出,类似于剥洋葱
  • 在这里插入图片描述
  • 所以代码可以这样写:
1 students = [['小明','小红','小刚','小美'],['小强','小兰','小伟','小芳']]
2 print(students[1][3])
  • 二、字典嵌套字典
  • 和列表嵌套类似,需要一层一层的取出,
  • 举例,要取出 ‘小芳’ 的成绩
1 scores = {
2            '第一组':{'小明':95,'小红':90,'小刚':100,'小美':85},
3            '第二组':{'小强':99,'小兰':89,'小伟':93,'小芳':88}
4            }
5 print(scores['第二组']['小芳'])
  • 三、列表和字典相互嵌套
1 # 最外层是大括号,所以是字典嵌套列表,先找到字典的键对应的列表,再判断列表中要取出的元素的偏移量
2 students = {
3               '第一组':['小明','小红','小刚','小美'],
4               '第二组':['小强','小兰','小伟','小芳']
5              }
6 print(['第一组'][3])
7 # 取出'第一组'对应列表偏移量为3的元素,即'小美'
8
9 # 最外层是中括号,所以是列表嵌套字典,先判断字典是列表的第几个元素,再找出要取出的值相对应的键
10 scores = [
11             {'小明':95,'小红':90,'小刚':100,'小美':85},
12             {'小强':99,'小兰':89,'小伟':93,'小芳':88}
13           ] 
14 print([1]['小强'])
15 #先定位到列表偏移量为1的元素,即第二个字典,再取出字典里键为'小强'对应的值,即99。

这篇关于纯干货-个人整理——字典和列表的不同点和相同点的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/214025

相关文章

Mysql中深分页的五种常用方法整理

《Mysql中深分页的五种常用方法整理》在数据量非常大的情况下,深分页查询则变得很常见,这篇文章为大家整理了5个常用的方法,文中的示例代码讲解详细,大家可以根据自己的需求进行选择... 目录方案一:延迟关联 (Deferred Join)方案二:有序唯一键分页 (Cursor-based Paginatio

Python中DataFrame转列表的最全指南

《Python中DataFrame转列表的最全指南》在Python数据分析中,Pandas的DataFrame是最常用的数据结构之一,本文将为你详解5种主流DataFrame转换为列表的方法,大家可以... 目录引言一、基础转换方法解析1. tolist()直接转换法2. values.tolist()矩阵

Android App安装列表获取方法(实践方案)

《AndroidApp安装列表获取方法(实践方案)》文章介绍了Android11及以上版本获取应用列表的方案调整,包括权限配置、白名单配置和action配置三种方式,并提供了相应的Java和Kotl... 目录前言实现方案         方案概述一、 androidManifest 三种配置方式

python展开嵌套列表的多种方法

《python展开嵌套列表的多种方法》本文主要介绍了python展开嵌套列表的多种方法,包括for循环、列表推导式和sum函数三种方法,具有一定的参考价值,感兴趣的可以了解一下... 目录一、嵌套列表格式二、嵌套列表展开方法(一)for循环(1)for循环+append()(2)for循环+pyPhWiFd

Python容器类型之列表/字典/元组/集合方式

《Python容器类型之列表/字典/元组/集合方式》:本文主要介绍Python容器类型之列表/字典/元组/集合方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录1. 列表(List) - 有序可变序列1.1 基本特性1.2 核心操作1.3 应用场景2. 字典(D

使用DeepSeek搭建个人知识库(在笔记本电脑上)

《使用DeepSeek搭建个人知识库(在笔记本电脑上)》本文介绍了如何在笔记本电脑上使用DeepSeek和开源工具搭建个人知识库,通过安装DeepSeek和RAGFlow,并使用CherryStudi... 目录部署环境软件清单安装DeepSeek安装Cherry Studio安装RAGFlow设置知识库总

Java中数组转换为列表的两种实现方式(超简单)

《Java中数组转换为列表的两种实现方式(超简单)》本文介绍了在Java中将数组转换为列表的两种常见方法使用Arrays.asList和Java8的StreamAPI,Arrays.asList方法简... 目录1. 使用Java Collections框架(Arrays.asList)1.1 示例代码1.

Mysql中InnoDB与MyISAM索引差异详解(最新整理)

《Mysql中InnoDB与MyISAM索引差异详解(最新整理)》InnoDB和MyISAM在索引实现和特性上有差异,包括聚集索引、非聚集索引、事务支持、并发控制、覆盖索引、主键约束、外键支持和物理存... 目录1. 索引类型与数据存储方式InnoDBMyISAM2. 事务与并发控制InnoDBMyISAM

StarRocks索引详解(最新整理)

《StarRocks索引详解(最新整理)》StarRocks支持多种索引类型,包括主键索引、前缀索引、Bitmap索引和Bloomfilter索引,这些索引类型适用于不同场景,如唯一性约束、减少索引空... 目录1. 主键索引(Primary Key Index)2. 前缀索引(Prefix Index /

python中列表list切分的实现

《python中列表list切分的实现》列表是Python中最常用的数据结构之一,经常需要对列表进行切分操作,本文主要介绍了python中列表list切分的实现,文中通过示例代码介绍的非常详细,对大家... 目录一、列表切片的基本用法1.1 基本切片操作1.2 切片的负索引1.3 切片的省略二、列表切分的高