【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,


相关文章
|
25天前
|
存储 索引 Python
|
26天前
|
Python
Python生成器、装饰器、异常
【10月更文挑战第15天】
|
1月前
|
传感器 大数据 数据处理
深入理解Python中的生成器:用法及应用场景
【10月更文挑战第7天】深入理解Python中的生成器:用法及应用场景
38 1
|
1月前
|
存储 数据处理 Python
深入解析Python中的生成器:效率与性能的双重提升
生成器不仅是Python中的一个高级特性,它们是构建高效、内存友好型应用程序的基石。本文将深入探讨生成器的内部机制,揭示它们如何通过惰性计算和迭代器协议提高数据处理的效率。
|
15天前
|
存储 程序员 数据处理
深入理解Python中的生成器与迭代器###
本文将探讨Python中生成器与迭代器的核心概念,通过对比分析二者的异同,结合具体代码示例,揭示它们在提高程序效率、优化内存使用方面的独特优势。生成器作为迭代器的一种特殊形式,其惰性求值的特性使其在处理大数据流时表现尤为出色。掌握生成器与迭代器的灵活运用,对于提升Python编程技能及解决复杂问题具有重要意义。 ###
|
1月前
|
存储 大数据 数据处理
理解Python中的生成器:高效迭代的秘密
【10月更文挑战第8天】理解Python中的生成器:高效迭代的秘密
33 0
|
1月前
|
存储 大数据 程序员
深入理解Python中的生成器
【10月更文挑战第8天】深入理解Python中的生成器
13 0
|
1月前
|
存储 安全 Serverless
Python学习四:流程控制语句(if-else、while、for),高级数据类型(字符串、列表、元组、字典)的操作
这篇文章主要介绍了Python中的流程控制语句(包括if-else、while、for循环)和高级数据类型(字符串、列表、元组、字典)的操作。
31 0
|
1月前
|
存储 自然语言处理 数据库
Python字典操作实现文章敏感词检索
Python字典操作实现文章敏感词检索
|
1月前
|
存储 JSON 数据处理
分析、总结Python使用列表、元组、字典的场景
分析、总结Python使用列表、元组、字典的场景