iis服务器助手广告广告
返回顶部
首页 > 资讯 > 后端开发 > Python >python 字典和列表嵌套用法详解
  • 636
分享到

python 字典和列表嵌套用法详解

python字典和列表嵌套python列表嵌套 2022-06-02 22:06:31 636人浏览 独家记忆

Python 官方文档:入门教程 => 点击学习

摘要

目录列表(List)常用方式字典(dictionary)常用方式组合使用列表嵌套列表列表嵌套字典字典嵌套字典字典嵌套列表嵌套什么时候用参考文献python中字典和列表的使用,在数据处理中应该是最常用的,这两个熟练后基

目录
  • 列表(List)
  • 常用方式
  • 字典(dictionary)
  • 常用方式
  • 组合使用
  • 列表嵌套列表
  • 列表嵌套字典
  • 字典嵌套字典
  • 字典嵌套列表
  • 嵌套什么时候用
  • 参考文献

python中字典和列表的使用,在数据处理中应该是最常用的,这两个熟练后基本可以应付大部分场景了。不过网上的基础教程只告诉你列表、字典是什么,如何使用,很少做组合说明。

刚好工作中采集prometheus监控接口并做数据处理的时候,用了很多组合场景,列出几个做一些分享。

列表(List)

序列是Python中最基本的数据结构。序列中的每个元素都分配一个数字 - 它的位置,或索引,第一个索引是0,第二个索引是1,依此类推。

列表是最常用的Python数据类型,它可以作为一个方括号内的逗号分隔值出现。

列表的数据项不需要具有相同的类型

特点就是:可重复,类型可不同

常用方式

创建一个列表,只要把逗号分隔的不同数据项使用方括号括起来即可。如下所示:


list1 = ['apple', 'banana', 2008, 2021]
list2 = [1, 2, 3, 4, 5 ]
list3 = ["a", "b", "c", "d"]

### 向list中增加元素
list1.append(3)   ## ['apple', 'banana', 2008, 2021, 3]

### 使用extend用来连接list
list1.extend([7, 8])  ##['apple', 'banana', 2008, 2021, 3, 7, 8]

### insert 将单个元素插入到list中
list3.insert(2, 'q')   ##['a', 'b', 'q', 'c', 'd']

### 获取列表的长度
print(len(list1))   ## 5

### 遍历list
for name in list1:
    print(name)

extend(扩展)与append(追加)的看起来类似,但实际上完全不同。

  • extend接受一个参数,这个参数总是一个list,并且把这个list中每个元素添加到原list中。
  • append接受一个参数,这个参数可以是任何数据类型,并且简单地追加到list的尾部。

字典(dictionary)

字典是另一种可变容器模型,且可存储任意类型对象。

  • 键(key)必须是唯一的,可以用数字,字符串或元组充当,而用列表就不行
  • 同一个键出现两次,最后出现的会更新前一个的值。

常用方式

字典的每个键值 key=>value 对用冒号:分割,每个键值对之间用逗号,分割,整个字典包括在花括号 {} 中 ,格式如下所示:


>>> dict = {'a': 1, 'b': 2, 'b': '3'}
>>> print(dict)
{'a': 1, 'b': '3'}

### 访问字典里的值
>>> print(dict['b'])
3

### 更新和添加字典
>>> dict['a'] = 8
>>> dict['c'] = 'cc'
>>> print(dict['a'])
8
>>> print(dict['c'])
cc

### 删除字典元素
>>> del dict['a']
>>> print(dict)
{'b': '3', 'c': 'cc'}
>>> dict.clear()      # 清空字典所有条目
>>> del dict          # 删除字典

组合使用

列表里也能嵌套列表,列表里能嵌套字典
字典里能嵌套字典,字典里也能嵌套列表
这是非常灵活的。

列表嵌套列表

这个用得不多,相对也比较简单,直接看例子:


### 打印输出字符 5
l = [[1,2],[3,4],[[5,6],[7,8]]]	
>>> print(l[2][0][0])
5

### 将嵌套列表转为非嵌套列表
>>> a = [[1,2,3],[4,5,6],[7],[8,9]]
>>> for i in a:
...     t.extend(i)
...
>>> print(t)
[1, 2, 3, 4, 5, 6, 1, 2, 3, 4, 5, 6, 7, 8, 9]

列表嵌套字典

在列表中嵌套字典应该是最常用的方式了,直接举例说明:


li = [{'a': 1}, {'b': 2}, {'c': 3}]

###(1) 循环获取字典里每个键值对:
>>> for i in range(len(li)):
...     for k, v in li[i].items():
...         print(k, v)
...
a 1
b 2
c 3
    
###(2) 获取字典里每个键值对(元组数据类型):
>>> for i in range(len(li)):
...     for j in li[i].items():
...         print(j)
...
('a', 1)
('b', 2)
('c', 3)

### 可以看到第二种获取到的键值对是 元组数据类型。

字典嵌套字典

字典嵌套字典:字符串作为key,字典作为value:


>>> s={'a':{0:'no',1:{'f':{0: 'no', 1: 'maybe'}}},'b':{}}  #构造字典
>>> s['a'][0]  # 取值
'no'
>>> s['a'][1]
{'f': {0: 'no', 1: 'maybe'}}
>>> s['a'][1]['f'][1]  
'maybe'

### 字典嵌套字典
dict = {
    '192.168.1.1':{'cpu':'0.23','内存':'16','硬盘':'500'},
    '192.168.1.2':{'cpu':'3.22','内存':'64','硬盘':'700'},
    '192.168.1.3':{'cpu':'1.99','内存':'32','硬盘':'800'},
}

### for遍历
>>> for k,v in dict.items():
...     print('\n',k,end=': ')
...     for x,y in v.items():
...         print(x,y,end=' ')
...

 192.168.1.1: cpu 0.23 内存 16 硬盘 500
 192.168.1.2: cpu 3.22 内存 64 硬盘 700
 192.168.1.3: cpu 1.99 内存 32 硬盘 800

字典嵌套列表

那么如何在字典里嵌套列表呢?
字典嵌套列表:字符串作为key,列表作为value。


### 字典嵌套列表
dict = {
    '水果':['苹果','香蕉','橘子'],
    '动物':['狮子','老虎','大象'],
    '语言':['中文','英文','日语'],
}

### 访问字典里的值
>>> print(dict['水果'])
['苹果', '香蕉', '橘子']

### 访问列表里的值
>>> print(dict['语言'][1])
英文

### 循环打印输出看效果
>>> for k, v in dict.items():
...     print('\n', k, end=':')
...     for x in v:
...         print(x,end=' ')
...

 水果:苹果 香蕉 橘子
 动物:狮子 老虎 大象
 语言:中文 英文 日语

嵌套什么时候用

比如希望存储年级前100名学生的各科成绩时,由于学生是由成绩进行排名的,列表是有序的数据类型,而字典是无序的数据类型,所以外面会用列表去存储所有的数据。

而对于学生的各科成绩来说,看重的不是有序,而是需要科目和成绩一一对应,这才是最重要的。或者说当我想获取到年纪第十名同学的语文成绩,那么可以直接去获取到列表对应的索引,和字典里对应的key就可以了,这样就能得到相应的value。

至于嵌套中的排序用法

参考文献

列表:https://www.runoob.com/python/python-lists.html
字典:Https://www.runoob.com/python/python-dictionary.html
嵌套字典:https://www.pythonf.cn/read/100118#1.2字典嵌套列表

到此这篇关于python 字典和列表嵌套用法的文章就介绍到这了,更多相关python 字典和列表嵌套内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

--结束END--

本文标题: python 字典和列表嵌套用法详解

本文链接: https://www.lsjlt.com/news/11068.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • python字典和列表嵌套用法
    本篇内容主要讲解“python字典和列表嵌套用法”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“python字典和列表嵌套用法”吧!python中字典和列表的使用,在数据处理中应该是最常用的,这两...
    99+
    2023-06-20
  • python中字典和列表的相互嵌套问题详解
    目录1.列表中存储字典:1.列表中存储多个字典2.访问列表中字典的值3.遍历访问多个值2.字典中存储列表1.访问字典中的列表元素2.访问字典中的值(字典中的值为列表)3.字典中存储字...
    99+
    2024-04-02
  • python如何提取列表嵌套字典的值
    要提取列表嵌套字典中的值,可以使用循环结构来遍历列表和字典,并使用字典的键来访问对应的值。以下是一个示例代码:```pythonda...
    99+
    2023-09-26
    python
  • 如何利用python实现列表嵌套字典取值
    目录一、实例二、解决思路三、代码示例一、实例 将以下列表的backup_unit_id全部提取出来 示例: dbs = [{         "backup_unit_id": 16...
    99+
    2024-04-02
  • 怎么利用python实现列表嵌套字典取值
    这篇文章主要介绍了怎么利用python实现列表嵌套字典取值的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇怎么利用python实现列表嵌套字典取值文章都会有所收获,下面我们一起来看看吧。一、实例将以下列表的bac...
    99+
    2023-07-02
  • 浅谈Python列表嵌套字典转化的问题
    在看视频教程的时候提到了[{'a' : 97}, {'b' : 98}, {'c' : 99}, {'d' : 100}, {'e' : 101}, ...........]形式的列...
    99+
    2024-04-02
  • python-分解多列表嵌套
    针对多列表嵌套,如何获取所有元素?之前使用for循环+if判断,进行分解,如下:    for first_layer in lists:        if isinstance(first_layer,list):           ...
    99+
    2023-01-31
    嵌套 分解 列表
  • python列表,元祖,字典详解
    列表:    基础数据类型,可含有大量数据,可存储各种数据类型    1,索引切片    与字符串一样    2,增删改查,以及其他操作        增        append 追加          insert  列表.inser...
    99+
    2023-01-31
    元祖 字典 详解
  • Python列表推导式和嵌套的列表推导式
    列表推导式提供了一个更简单的创建列表的方法。常见的用法是把某种操作应用于序列或可迭代对象的每个元素上,然后使用其结果来创建列表,或者通过满足某些特定条件元素来创建子序列。 例如,假设我们想创建一个平方列表,像这样 >>...
    99+
    2023-01-31
    列表 嵌套 Python
  • Python怎么避免字典和元组的多重嵌套
    本文小编为大家详细介绍“Python怎么避免字典和元组的多重嵌套”,内容详细,步骤清晰,细节处理妥当,希望这篇“Python怎么避免字典和元组的多重嵌套”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。一、字典、元组...
    99+
    2023-07-02
  • Python中优化列表和字典
    Python中优化列表和字典,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。在循环内代码:@timeit def append_inside_loop(lim...
    99+
    2023-06-16
  • Python 避免字典和元组的多重嵌套问题
    目录一、字典、元组的多重嵌套二、嵌套结构重构为类一、字典、元组的多重嵌套 例 1:记录全班学生的成绩。 分析:定义一个 SimpleGradebook类, 学生名是字典self._g...
    99+
    2024-04-02
  • python列表嵌套元组的方法是什么
    在Python中,可以使用列表嵌套元组的方法来创建一个包含多个元组的列表。列表嵌套元组可以通过以下几种方式创建: 直接在列表中定...
    99+
    2023-10-22
    python
  • Python实现嵌套列表的方法有哪些
    这篇文章主要讲解了“Python实现嵌套列表的方法有哪些”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“Python实现嵌套列表的方法有哪些”吧!模拟数据data = [[...
    99+
    2023-07-05
  • 怎么加速Python列表和字典
    本篇内容主要讲解“怎么加速Python列表和字典”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“怎么加速Python列表和字典”吧!我们先编写一个装饰器函数来计算函数的执行时间,方便测验不同代码的...
    99+
    2023-06-16
  • python 使用列表和字典存储信息
    """     作者:白     时间:2018年1月9日     需求:假设你很多汽车,通过不断询问您是否要将车辆添加到您的库存中,     如果您这样做,那么它将会询问汽车的细节。如果没有,应用程序将打印所有汽车的详细信息并退出。   ...
    99+
    2023-01-31
    字典 列表 信息
  • Python实现嵌套列表的7中方法总结
    目录模拟数据方式1:for循环方式2:列表推导式方式3:使用itertools库方式4:使用sum函数方式5:Python自加方式6:extend函数方式7:使用递归函数后续大家好,...
    99+
    2023-03-03
    Python实现嵌套列表方法 Python实现嵌套列表 Python嵌套列表
  • Python使用列表和字典实现简单的考试系统详解
    目录需求分析实现1登录2考试3将整个系统串起来1 之前我们学习了列表,知道列表可以用来存储一组数据,可以增删改查,可以遍历 2 之前我们学习了字典,知道字典可以用来存储键值对,与列表...
    99+
    2023-01-17
    Python考试系统 Python列表与字典
  • Python 列表和字典常踩坑即解决方案
    目录一、关于列表1.问题描述2.解决方案方案一方案二二、关于字典1.问题描述2.解决方案结论前言: 在Python中,如果我们想要在遍历一组数据的过程中,对这组数据进行修改,通常会出...
    99+
    2024-04-02
  • Python列表和字典踩坑问题怎么解决
    这篇“Python列表和字典踩坑问题怎么解决”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“Python列表和字典踩坑问题怎么...
    99+
    2023-06-30
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作