位置: 编程技术 - 正文

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)

  • 营业外支出增加的原因
  • 机器配件属于什么报销项目
  • 收入与支出怎么算利润率
  • 中介费要求开发票中介公司不开
  • 购进电脑怎么折旧
  • 境外增值税代扣代缴
  • 固定资产减少当月
  • 建筑挂靠企业账务处理
  • 递延资产是长期待摊费用吗
  • 收到实物返利
  • 成本法和权益法大白话
  • 母公司收购少数股东股权,之前的利润母公司不享有
  • 用理财产品去抵债违法吗
  • 会计凭证的概念及分类
  • 新成立的分公司怎么样
  • 粮食仓储设施设备管理
  • 工会经费的计税基础
  • 交纳经营所得的个税怎么做分录?
  • 预交增值税抵减申报
  • 小规模农产品可以抵扣吗
  • 分期付款购买商品房后续没钱还怎么办
  • 银行代扣社保费
  • 劳务合同如何缴纳社保
  • 手把手教你win7换主板不重装系统的方法
  • 业务招待费是收入的
  • 房地产开发企业建造的商品房,在出售前
  • 增值税减免是当月报下月冲吗
  • 发票丢失如何处理
  • macOSCatalina10.15.5正式版值得升级吗 macOSCatalina10.15.5更新了什么
  • yii2.0实现验证用户名与邮箱功能
  • (Select)解决:Element-ui 中 Select 选择器下拉框样式及输入框样式的修改问题(背景色透明与悬停背景色变化与下拉框边距变化等操作)
  • 程序员中秋节祝福语
  • php文件上传用什么请求方法
  • 分配水电费会计分录需要写税吗?
  • 计提补贴会计分录
  • php如何生成html
  • 什么是非营利性养老机构
  • php连接数据库的基本步骤是什么
  • 增删改查功能实现
  • 政府补助的核算内容有哪些
  • 金蝶标准版怎么查应收应付款
  • 进项票和销项票金额一样可以吗
  • 小规模个体工商户怎么交税
  • 个体工商户个税多久申报一次
  • 职工工伤住院期间的各项费用由谁负责
  • 购买原材料没有发票能入库吗
  • 销售货款是什么
  • 营改增后服务业账务处理
  • 计提附加税金额
  • 保理融资的费用由谁承担
  • 房地产企业预付账款会计分录
  • 企业净资产怎么填
  • mysql5.7.24安装配置教程
  • linux 切文件
  • winxp系统电脑开机要按F1键才能正常启动的图文步骤
  • xp电脑如何在网页打开
  • win10系统遇到错误
  • win 10 ie8
  • 如何把xp系统的软件删除
  • mac上播放器
  • win8c盘
  • windows7英雄联盟老是崩溃
  • win10 电脑
  • win8系统怎么设置桌面
  • linux的命令行界面是什么意思
  • javaScript基础语法数据类型
  • Javascript typeof与instanceof的区别
  • 脚本合集
  • 批处理设置dns
  • js的脚本语言
  • js设计模式有什么用
  • jquery动态
  • eventbus threadmode
  • android基础入门教程
  • jquery去重复数组
  • js获取当前月份的天数
  • 发票 报销期限
  • 西安二手房几年可以过户
  • 快递公司开票
  • 如何查询公司的营业执照
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设