位置: 编程技术 - 正文

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

编辑:rootadmin

推荐整理分享python dict 字典 以及 赋值 引用的一些实例(详解)(python中的字典怎么用),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:python里的字典,python 字典的字典,pythonsorted字典,python 字典的字典,python字典 append,python字典x in d,python字典dict方法,python 字典的字典,内容如对您有帮助,希望把文章链接给更多的朋友!

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

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

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

方法1:

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

方法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的输出结果一样

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

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 字典 以及 赋值 引用的一些实例(详解)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持积木网。

linux平台使用Python制作BT种子并获取BT种子信息的方法 本文实例讲述了linux平台使用Python制作BT种子并获取BT种子信息的方法。分享给大家供大家参考,具体如下:最近研究了一下linuxBT服务器环境的搭建,需

Python 字符串大小写转换的简单实例 ①所有字母都转换为大写#-*-coding:utf-8-*-if__name__=="__main__":a='hello,world!'print(a.upper())输出:HELLO,WORLD!②所有字母都转换为小写#-*-coding:utf-8-*-if__name__=="__main_

python实现的多线程端口扫描功能示例 本文实例讲述了python实现的多线程端口扫描功能。分享给大家供大家参考,具体如下:下面的程序给出了对给定的ip主机进行多线程扫描的Python代码#!/usr

标签: python中的字典怎么用

本文链接地址:https://www.jiuchutong.com/biancheng/381336.html 转载请保留说明!

上一篇:Python使用中文正则表达式匹配指定中文字符串的方法示例(python怎么弄中文)

下一篇:linux平台使用Python制作BT种子并获取BT种子信息的方法(linux py)

  • 对本次疫情有什么看法
  • 个人代开资金占用费,如何计算代扣代缴个税
  • 带薪年假是入职就有还是要等一年以后
  • 租金营改增
  • 金税盘可以用安卓的线吗
  • 简易计税的进项可以抵扣吗
  • 公司员工受伤怎么报工伤
  • 固定资产一次性扣除怎么做账
  • 已经认证的抵扣联不见了,怎么办?
  • 外购原材料自用
  • 本月做未开票收入,下月开票怎么做账
  • 出口退税的原则是什么
  • 土方运输费会计分录
  • 税控盘抵减税款怎么转出会计分录
  • 一月份的工作日是多少天
  • 未达起征点可以开增值税专票吗
  • 餐饮业租赁要求
  • 财产转移数据缴费怎么交
  • 职工食堂购买洗碗机申请
  • 城建税是增值税的附加税吗
  • 期间费用包括哪几个科目
  • 免抵退不得免征和抵扣是什么意思
  • 细说linux
  • 苹果输入法快捷键怎么调出来
  • 厂区绿化工程计入什么科目
  • 发出材料成本差异会计分录
  • 核定征收的企业利润怎么处理
  • 安卓车机系统开发
  • 企业的各项费用
  • php的implode
  • 应付福利费和应付职工薪酬的关系
  • wisdm数据集
  • 工业企业应付账款周转率多少合适
  • 猿创设计科技有限公司
  • 第十七届全国大学生智能车
  • css面试题及答案
  • rm -rf/指令指删除什么
  • 公司转让后原账本怎么处理
  • 如何顺利完成年度任务
  • 支付员工工伤医疗费用怎么做账
  • 报验户如何管理
  • 个人所得税和投保的区别
  • 关于SQL Server安全控制的说法正确的是
  • mysql 死锁处理
  • sqlserver 恢复数据库
  • 工业企业土地使用税
  • 限售股算不算账户资产
  • 契税退税政策怎么操作
  • 发票开错一个字还能报销吗?
  • 发票已付款,可以开红字吗
  • 长期股权投资全部亏损汇算清缴怎么填
  • 给客户购物卡如何充钱
  • 实收资本会变吗?
  • 采用补偿贸易方式的是
  • sql server分组查询
  • mysql数据库增量备份命令
  • 远程桌面连接 server 2016
  • win8分盘怎么分
  • win10弹出提示
  • windows10网页打不开怎么办
  • xp操作系统入门
  • mac和iphone互动
  • win10快速隐藏窗口
  • dll文件应该放在哪里
  • 微软新版windows
  • WIN7系统如何设置开机密码和屏保密码
  • linux-swap
  • SQLite -- 嵌入式关系型数据库
  • How to embed a jframe in an eclipse view
  • require jquery
  • html淘宝搜索框代码
  • jquery点击移动div
  • js md5加密方法
  • ajax与java使用实例
  • jquery自定义方法
  • 四川省地方税务局关于城镇土地使用税困难减免
  • 财政局,人社局和法院哪个好
  • 北京税务稽查局网站
  • 福建地税网
  • 签订设计合同
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设