Python学习日记-10-字典

本文记录了Python字典的学习心得,包括字典的创建、增删改查操作,以及字典在实际问题中的应用。通过实例解析字典的高级特性,如默认值、更新合并、字典 comprehension 和其在数据处理中的高效性。
#--------字典的创建--------字典:无序,键唯一

dic_1 = {'name':'xiaoran','age':20,'job':'student'}
print(dic_1)

dic_2 = dict((('name','xiaoran'),('age',20),('job','student')))     #dict函数
print(dic_2)

#--------增----------------

# dic_3 = {'name':'xiaoran'}
# dic_3['age'] = 18             #原字典没有这个键,则创建出一个新的键值对
# print(dic_3)
#
# dic_3['name'] = 20            #原字典有此键,则对该键值进行替换
# print(dic_3)
#
# rel_1 = dic_3.setdefault('hobby','girl')  #原字典无此键,则添加该键值对,并返回真实键值
# print(dic_3)
# print(rel_1)
#
# rel_2 = dic_3.setdefault('name','girl')  #原字典有此键,则不改变原有键值,并返回真实键值(原有键值)
# print(dic_3)
# print(rel_2)

# dic_4 = {'name':'xiaoran','age':20}
# dic_5 = {'name': 'xiaoran', 'age': 18,'hobby': 'girl'}
#
# dic_4.update(dic_5)                        #提供的字典中的项会被添加到新的字典中,若有相同的键会被覆盖
# print(dic_4)

#------------查------------

# dic_1 = {'name': 'xiaoran', 'age': 18,'hobby': 'girl'}
#
# print(dic_1['name'])         #通过键查询
# print(dic_1.get('name'))     #通过get函数查询,当没有此键时输出 None
#
# print(dic_1.keys())          #结果:dict_keys(['name', 'age', 'hobby'])
# print(list(dic_1.keys()))    #结果:['name', 'age', 'hobby']   查询键,用列表输出
# print(list(dic_1.values()))  #结果:['xiaoran', 18, 'girl']    查询键值,列表输出
# print(list(dic_1.items()))   #结果:[('name', 'xiaoran'), ('age', 18), ('hobby', 'girl')]  查询键值对,列表输出

#------------删------------

# dic_1 = {'name': 'xiaoran', 'hobby': 'girl','age': 18}

# dic_1.clear()              #清空字典内容
# print(dic_1)

# del dic_1['name']          #删除指定键值对
# print(dic_1)

# print(dic_1.pop('age'))    #删除指定键值对,并返回该键值
# print(dic_1)

# a = dic_1.popitem()        #随机删除一个键值对,并以元组返回该键值对
# print(dic_1,a)

# del dic_1                  #删除整个字典

#------------其他操作--------
#--------------  1   fromkeys 使用给定的新键建立新的字典,每一个键对应相同一个值
#  54集有一个问题

# dic_1 = dict.fromkeys(['host_1','host_2','host_3'],'test')  #结果:{'host_1': 'test', 'host_2': 'test', 'host_3': 'test'}
# print(dic_1)

# dic_1 = dict.fromkeys(['host_1','host_2','host_3'])    #结果:{'host_1': None, 'host_2': None, 'host_3': None}
# print(dic_1)
内容概要:本文系统介绍了算术优化算法(AOA)的基本原理、核心思想及Python实现方法,并通过图像分割的实际案例展示了其应用价值。AOA是一种基于种群的元启发式算法,其核心思想来源于四则运算,利用乘除运算进行全局勘探,加减运算进行局部开发,通过数学优化器加速函数(MOA)和数学优化概率(MOP)动态控制搜索过程,在全局探索与局部开发之间实现平衡。文章详细解析了算法的初始化、勘探与开发阶段的更新策略,并提供了完整的Python代码实现,结合Rastrigin函数进行测试验证。进一步地,以Flask框架搭建前后端分离系统,将AOA应用于图像分割任务,展示了其在实际工程中的可行性与高效性。最后,通过收敛速度、寻优精度等指标评估算法性能,并提出自适应参数调整、模型优化和并行计算等改进策略。; 适合人群:具备一定Python编程基础和优化算法基础知识的高校学生、科研人员及工程技术人员,尤其适合从事人工智能、图像处理、智能优化等领域的从业者;; 使用场景及目标:①理解元启发式算法的设计思想与实现机制;②掌握AOA在函数优化、图像分割等实际问题中的建模与求解方法;③学习如何将优化算法集成到Web系统中实现工程化应用;④为算法性能评估与改进提供实践参考; 阅读建议:建议读者结合代码逐行调试,深入理解算法流程中MOA与MOP的作用机制,尝试在不同测试函数上运行算法以观察性能差异,并可进一步扩展图像分割模块,引入更复杂的预处理或后处理技术以提升分割效果。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值