全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

python dict 字典 以及 赋值 引用的一些实例(详解)

最近在做一个很大的数据库方面的东东,要用到根据数值来查找,于是想到了python中的字典,平时没用过dict这个东东

用的最多的还是 list 和 tuple (网上查 用法一大堆)

看了一下创建字典的方法:

方法1:

dict = {'name': 'earth', 'port': 80}


方法2:

fdict = dict((['x', 1], ['y', 2]))


方法3:

ddict = {}.fromkeys(('x', 'y'), -1)


都实验了一下这些方法,发现不好用,做不出来自己想要的结果,因为数据库查找出来的结果是tuple类型的,不能改变,用方法2,必须得确保里面

是list (在这里提一下,tuple和list类型互换的方法 l=tuple(l) l = list(l))

在做练习的时候突然看到了一种方法,先声明一个

fdict= {}

然后

fdict[keys] = values

然后接下来继续循环这个式子就行了,结果能一个一个添加到fdict中,而不会被覆盖,以前还以为会默认覆盖成新的

用这种方法,一下就把结果转成了键值对

python中传值其实传的是地址:

例子:

a = [1,2,3,4]

b = a

a.append(1)

print a

print b


结果可以发现两个结果都为:[1,2,3,4,1]

这说明 python中的一个变量给另一个变量赋值时,传的是地址,所以当a指向的值变化时,b由于获得的是指向a的一个指针,所以结果也会

跟a的输出结果一样


more experiments:

a = [1,2,3,4]

b = a

a += [1] #在尾部增加一个list值

print a

print b


可以看到结果为:

[1, 2, 3, 4, 1]


[1, 2, 3, 4, 1]

这个没有什么问题,还是跟上面的解释一样,传的是地址,无论a怎么添加,b都是跟a地址相同的输出


再看下一个实验:


a = [1,2,3,4]

b = a

a = a + [1] #在尾部增加一个list值

print a

print b

读者可以试着跑一下看看结果


运行的结果为:

[1,2,3,4,1]

[1,2,3,4]


这是为什么呢?

为什么 += 和分开相加之后就不同结果了呢


通过查资料,我确信了以下解释:

当a = a+[1]时,系统所做的是把a + [1]的结果先放到另外一个地址c中,然后再把a指向这个c地址,所以输出a的时候,结果是可想而知的

但是b还是指向以前a的位置,以前位置的值并没有变化,所以b才会输出这样一个令人稍感诧异的值

而+=操作,还是在原来a指向的地址上进行操作,所以b也会跟着变化


总结:python中一个变量给另一个变量进行赋值操作(=)时,传的不是值,而是指针地址,一定要谨慎操作,避免掉坑

以上这篇python dict 字典 以及 赋值 引用的一些实例(详解)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。


# python  # dict  # 赋值  # Python增强赋值和共享引用注意事项小结  # Python3多目标赋值及共享引用注意事项  # Python中实现变量赋值传递时的引用和拷贝方法  # python中引用和赋值的区别及说明  # 的是  # 也会  # 给大家  # 都是  # 这是  # 是在  # 在这里  # 看了  # 结果是  # 最多  # 才会  # 希望能  # 就把  # 要用  # 这样一个  # 可以看到  # 做一个  # 什么呢  # 所做  # 另外一个 


相关文章: 电商网站制作多少钱一个,电子商务公司的网站制作费用计入什么科目?  电脑免费海报制作网站推荐,招聘海报哪个网站多?  网站制作大概要多少钱一个,做一个平台网站大概多少钱?  天津个人网站制作公司,天津网约车驾驶员从业资格证官网?  建站主机选哪种环境更利于SEO优化?  建站VPS配置与SEO优化指南:关键词排名提升策略  寿县云建站:智能SEO优化与多行业模板快速上线指南  怎么制作网站设计模板图片,有电商商品详情页面的免费模板素材网站推荐吗?  兔展官网 在线制作,怎样制作微信请帖?  大连网站制作费用,大连新青年网站,五年四班里的视频怎样下载啊?  微信推文制作网站有哪些,怎么做微信推文,急?  如何在云服务器上快速搭建个人网站?  矢量图网站制作软件,用千图网的一张矢量图做公司app首页,该网站并未说明版权等问题,这样做算不算侵权?应该如何解决?  学校为何禁止电信移动建设网站?  网站制作壁纸教程视频,电脑壁纸网站?  如何通过商城自助建站源码实现零基础高效建站?  定制建站价位费用解析与套餐推荐全攻略  北京制作网站的公司排名,北京三快科技有限公司是做什么?北京三快科技?  如何通过老薛主机一键快速建站?  开封网站制作公司,网络用语开封是什么意思?  高防服务器租用指南:配置选择与快速部署攻略  零基础网站服务器架设实战:轻量应用与域名解析配置指南  如何快速配置高效服务器建站软件?  高配服务器限时抢购:企业级配置与回收服务一站式优惠方案  如何选择PHP开源工具快速搭建网站?  实现虚拟支付需哪些建站技术支撑?  Avalonia如何实现跨窗口通信 Avalonia窗口间数据传递  小型网站制作HTML,*游戏网站怎么搭建?  Python lxml的etree和ElementTree有什么区别  公司网站设计制作厂家,怎么创建自己的一个网站?  javascript基本数据类型及类型检测常用方法小结  建站之星安装步骤有哪些常见问题?  专业企业网站设计制作公司,如何理解商贸企业的统一配送和分销网络建设?  如何选择适配移动端的WAP自助建站平台?  ,石家庄四十八中学官网?  如何通过.red域名打造高辨识度品牌网站?  如何快速搭建响应式可视化网站?  网站制作公司哪里好做,成都网站制作公司哪家做得比较好,更正规?  如何通过万网虚拟主机快速搭建网站?  武汉网站如何制作,黄黄高铁武穴北站途经哪些村庄?  如何登录建站主机?访问步骤全解析  建站之星如何实现五合一智能建站与营销推广?  如何在IIS7上新建站点并设置安全权限?  深圳防火门网站制作公司,深圳中天明防火门怎么编码?  制作网站的模板软件,网站怎么建设?  如何配置IIS站点权限与局域网访问?  建站之星安装后界面空白如何解决?  家庭服务器如何搭建个人网站?  大连网站制作公司哪家好一点,大连买房网站哪个好?  定制建站哪家更专业可靠?推荐榜单揭晓 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。