当前位置: 首页 > news >正文

python dict 实现竟藏这么多赋值引用实例,速来瞧

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

2017年间某月某日某时段, 具体为01月20日10时36分18秒, 进行了更新, 存在投稿行为。

下面, 小编为大家带来这样一篇, 有 dict 字典以及也有赋值引用的一些实例, 这些实例是详解的。小编觉着它挺不错的, 当下就分享给大家, 并且也给大家当作一个参考。大家一起跟着小编过来瞧一瞧。

最近, 在着手做一个规模颇大的, 关涉数据库领域的事务,需要借助依据数值去开展查询操作, 由此便忆及了其中的字典, 平常未曾运用过dict这个事物。

被使用频率最高的依旧是 list 以及 tuple , (去网上进行查找, 能够发现用法数量众多)。

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

方法1:

方法2:

fdict = dict((, ))

方法3:

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

逐一针对这里面的这些方法做了实验, 结果发觉不太好用, 没办法做出自身期望达成的结果, 鉴于从数据库里查找而得的结果属于tuple类型, 无法进行更改, 要是运用方法2, 那就一定要保证其中。

若是list, (在此处提及一下, tuple与list类型相互转换的办法为: l=tuple(l), l = list(l))

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

fdict= {}

然后

fdict =

紧接着随后持续循环此式子便可, 其结果能够逐个地添加至fdict里, 并且不会被覆盖, 以往还认为会默认覆盖成全新的。

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

中传值其实传的是地址:

例子:

a =

b = a

a.(1)

print a

print b

结果可以发现两个结果都为:

1,2,3,4,1

这表明, 在其中一个变量给另一个变量进行赋值操作的时候, 传递过去的是地址, 因此, 当a所指向的值发生改变时, b因为获取到的是指向a的一个指针, 所以最终结果也会如此。

跟a的输出结果一样

more :

a =

b = a

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

print a

print b

可以看到结果为:

1, 2, 3, 4, 1

1, 2, 3, 4, 1

这件事情不存在什么问题, 依旧是跟上面所做出的解释保持一致, 传递的是地址, 不管a如何去进行添加操作, b所输出的都是与a地址相同的内容。

再看下一个实验:

a =

b = a

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

print a

print b

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

运行的结果为:

1,2,3,4,1

这是为什么呢?

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

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

在a等于a自增的情形之下, 系统所施行的实际那般的做法是, 先将a自增之后所获取到的这般结果放置于另外的一个地址c里边, 接着呢, 再去把a指向这个名叫c的地方, 所以在输出a这个元素的时候, 其最终会有怎样的结果那完全是能够想象得到的。

可是, b依旧是朝着先前a所在的那个位置去指, 然而先前位置上边的那个值并没有产生改变, 所以, b才会输出这么样一个会让人稍微感觉到诧异的数值。

可是, 那个 += 操作, 它依旧是在原本 a 所指向的那个地址之上开展操作的, 所以, b 同样也会跟着发生变化的。

谨记: 当把一个变量赋予另一个变量进行赋值行为(=)之际, 所传递的并非值, 而是指针地址, 务必审慎操作, 防止落入陷阱。

以下这些, 关于dict字典的内容, 还有赋值引用的一些实例, 并且是有详解的, 这些便是小编分享给大伙的所有内容了, 期望能够给大伙一个参考依据, 同时也期望大伙能够对作者给予诸多支持。

http://www.jsqmd.com/news/1141197/

相关文章:

  • 零碳园区产业园管理系统的全场景源网荷储氢协同调度功能的应用场景有哪些?
  • 本地部署AI生图与视频生成:从扩散模型原理到实战应用
  • iOS越狱完全指南:5分钟了解如何解锁iPhone隐藏功能
  • 收藏!互联网产品经理转AI的8大行业方向深度解析,小白也能看懂
  • Sunshine游戏串流架构深度解析:如何构建企业级自托管云游戏平台?
  • 内链外链核心区别 | 让百度蜘蛛抓取频次提升5倍的逻辑
  • AD7490与TM4C129ENCZAD在工业信号采集中的优化实践
  • OpenCore Legacy Patcher终极指南:如何让老旧Mac免费升级最新macOS系统
  • 2026年适合中小团队的企业网盘有哪些?8款文件管理工具盘点
  • 大数据毕业设计最全选题答疑
  • 老Mac升级新系统:OpenCore Legacy Patcher一键解决方案
  • 太原聚氨酯地坪漆厂家哪家好
  • 智能恒温器技术解析:从原理到实践应用
  • BetterNCM安装器完全指南:3分钟快速部署网易云插件生态
  • Bilibili视频下载自动化解决方案:架构优化与集成化内容管理
  • 重塑供应链:AI从“数据参谋”走向“决策大脑”
  • Kubernetes(1.31 到 1.35)集群、CRI containerd(1.7 到 2.3)升级流程与问题记录
  • 实验图表审计:图画得漂亮,不代表结论可靠
  • L9958电机驱动芯片与PIC18F47J53的SPI控制方案解析
  • 为什么很多人会误解进销存软件只管库存
  • 3 种主流地图坐标系深度对比:WGS 84、GCJ-02、BD-09 的精度与偏移实测分析
  • BetterNCM安装器:3分钟轻松搞定网易云插件安装的完整指南
  • LENA-R8 GNSS与STM32F412RE实现低功耗高精度定位方案
  • 反向海淘系统:业务定义和底层逻辑通俗讲解
  • DeepSeek V4 峰谷定价来了,我连夜算了笔账
  • 前端性能预算的制定、监控与自动化阻断策略
  • Web安全入门:从渗透原理到靶场实战的完整学习路径
  • C#语法糖(按照实用性排序)
  • FlashMemory:Transformer KV缓存管理的范式重构
  • 【市场分析】全球的物理AI趋势,中国企业如何?2026年中排名