【Python操作基础】——字典,迭代器和生成器

简介: 【Python操作基础】——字典,迭代器和生成器

【Python操作基础】系列——字典/迭代器和生成器操作,建议收藏!

该篇文章首先利用Python展示了使用字典类型数据的相关操作以及迭代器和生成器操作,包括字典的定义方法、主要特征;迭代器和生成器中的可迭代对象与迭代器、生成器与迭代器等。

1 字典

1.1 定义方法

 运行程序:

myDict1 = {'name': 'Jerry', 'age': 23,9:20}
myDict1  
myDict2={2:2,2:3,4:5}
myDict2

运行结果:

{'name': 'Jerry', 'age': 23, 9: 20}
{2: 3, 4: 5}

1.2 主要特征

  运行程序:

myDict1 = {'name': 'Jerry', 'age': 23,9:20}
myDict1['name'] #提取key对应值
myDict1[9]  ##提取key对应值
20
myDict1 = {'name': 'Jerry', 'age': 23,9:20}  
myDict1['name']="chao"
myDict1  #修改key对应值
#dct3={[2,3]:[4,4], 5:5} #报错,字典不能为不可嘻哈对象

运行结果:

'Jerry'
20
20
{'name': 'chao', 'age': 23, 9: 20}
---------------------------------------------------------------------------
TypeError                                 Traceback (most recent call last)
<ipython-input-45-4f59b769dfbf> in <module>
      8 myDict1  #修改key对应值
      9 
---> 10 dct3={[2,3]:[4,4], 5:5}
TypeError: unhashable type: 'list'

2 迭代器与生成器

2.1 可迭代对象与迭代器

 运行程序:

#能接收可迭代对象的函数都可以接收迭代器,可迭代对象不一定是迭代器
myList=[1,2,3,4,5]
#next(myList)   #报错,myLit虽属于“可迭代对象”,但不是“迭代器”
myIterator=iter(myList)#可利用iter将可迭代对象转化为迭代器
print(next(myIterator))
print(next(myIterator))
print(next(myIterator))

运行结果:

1
2
3

2.2 生成器与迭代器

  运行程序:

def myGen():    #生成器:生成一个新的迭代器函数
    x=range(1,11)
    for i in x:
        yield  i+2 #生成器不用return函数,而用yield函数
myGen()
for x in myGen():
    print(x,end=",")

运行结果:

<generator object myGen at 0x000002CD427E32A0>
3,4,5,6,7,8,9,10,11,12,


相关文章
|
23天前
|
大数据 数据处理 开发者
Python中的迭代器和生成器:不仅仅是语法糖####
本文探讨了Python中迭代器和生成器的深层价值,它们不仅简化代码、提升性能,还促进了函数式编程风格。通过具体示例,揭示了这些工具在处理大数据、惰性求值及资源管理等方面的优势。 ####
|
23天前
|
XML JSON API
如何使用Python将字典转换为XML
本文介绍了如何使用Python中的`xml.etree.ElementTree`库将字典数据结构转换为XML格式。通过定义递归函数处理字典到XML元素的转换,生成符合标准的XML文档,适用于与旧系统交互或需支持复杂文档结构的场景。示例代码展示了将一个简单字典转换为XML的具体实现过程。
16 1
|
2月前
|
存储 索引 Python
|
1月前
|
JavaScript 前端开发 算法
python中的列表生成式和生成器
欢迎来到瑞雨溪的博客,这里是一位热爱JavaScript和Vue的大一学生的天地。通过自学前端技术2年半,现正向全栈开发迈进。如果你从我的文章中受益,欢迎关注,我将持续更新高质量内容,你的支持是我前进的动力!🎉🎉🎉
23 0
|
2月前
|
Python
Python生成器、装饰器、异常
【10月更文挑战第15天】
|
2月前
|
传感器 大数据 数据处理
深入理解Python中的生成器:用法及应用场景
【10月更文挑战第7天】深入理解Python中的生成器:用法及应用场景
79 1
|
2月前
|
存储 数据处理 Python
深入解析Python中的生成器:效率与性能的双重提升
生成器不仅是Python中的一个高级特性,它们是构建高效、内存友好型应用程序的基石。本文将深入探讨生成器的内部机制,揭示它们如何通过惰性计算和迭代器协议提高数据处理的效率。
|
1月前
|
存储 程序员 数据处理
深入理解Python中的生成器与迭代器###
本文将探讨Python中生成器与迭代器的核心概念,通过对比分析二者的异同,结合具体代码示例,揭示它们在提高程序效率、优化内存使用方面的独特优势。生成器作为迭代器的一种特殊形式,其惰性求值的特性使其在处理大数据流时表现尤为出色。掌握生成器与迭代器的灵活运用,对于提升Python编程技能及解决复杂问题具有重要意义。 ###
|
2月前
|
存储 大数据 数据处理
理解Python中的生成器:高效迭代的秘密
【10月更文挑战第8天】理解Python中的生成器:高效迭代的秘密
42 0
|
2月前
|
存储 大数据 程序员
深入理解Python中的生成器
【10月更文挑战第8天】深入理解Python中的生成器
21 0
下一篇
DataWorks