python - 在这个 Python 示例中,为什么一个变量会影响另一个变量?
问题描述
这个输出的原因是什么?
这是一个例子:
list_ = [{'status': True}]
print(list_)
for dict_ in list_:
dict_['status'] = False
print(dict_)
print(list_)
出去:
[{'status': True}]
{'status': False}
[{'status': False}] # Why list_ changed? I changed only the dict_!
为什么list_
变了?我只改变了dict_
解决方案
List 和 dict 是可变对象,这基本上意味着它们指向同一个内存对象。
推荐阅读
- c# - 呈现包含存储在资源文件中的 HTML 的显示名称
- asp.net - 如何打开PDF文件而不是在浏览器中以角度下载它?
- java - spring cloud aws 多个 sqs 监听器
- reactjs - 当您需要在仍从父组件获取数据时渲染某些内容时,最佳实践是什么?
- javascript - 从日期获取月份的周数(从星期一开始的周数)
- javascript - 如何检查字符串是否包含javascript中的WORD?
- docker - 如何为上游软件版本化 Docker 镜像
- gstreamer - GStreamer - RTSP 到 HLS / mp4
- python-3.x - 如何在电报机器人中创建输入提交界面(在 Facebook 机器人中可用)
- php - Prestashop 模块未显示在列表中