赞
踩
每次for循环过程中,列表中的所有字典值都和最新的字典赋值相同
- #!/usr/bin/env python
- # -*- coding:utf-8 -*-
- # author:bigbear
- # datetime:2022/9/8 20:29
- # software: PyCharm
-
- t = {"tt": "DUCLAE"}
- print(f"---t初始内存地址---{id(t)}")
- list0 = [1, "33", 5, {"gg": "sad"}, [1, 2, 3]]
- list1 = []
- for n in list0:
- t["tt"] = n
- print(f"\t---t被赋值后内存地址---{id(t)}")
- print(f"\t---t被赋值后字典---{t}")
- list1.append(t)
- for i, n1 in enumerate(list1):
- print(f"\t---列表中第-{i + 1}-个内存地址---{id(n1)}")
- print(f"\t---列表中第-{i + 1}-个字典---{n1}")
- print(f"\t---list1---{list1}\n")
---t初始内存地址---2090766940096
---t被赋值后内存地址---2090766940096
---t被赋值后字典---{'tt': 1}
---列表中第-1-个内存地址---2090766940096
---列表中第-1-个字典---{'tt': 1}
---list1---[{'tt': 1}]---t被赋值后内存地址---2090766940096
---t被赋值后字典---{'tt': '33'}
---列表中第-1-个内存地址---2090766940096
---列表中第-1-个字典---{'tt': '33'}
---列表中第-2-个内存地址---2090766940096
---列表中第-2-个字典---{'tt': '33'}
---list1---[{'tt': '33'}, {'tt': '33'}]---t被赋值后内存地址---2090766940096
---t被赋值后字典---{'tt': 5}
---列表中第-1-个内存地址---2090766940096
---列表中第-1-个字典---{'tt': 5}
---列表中第-2-个内存地址---2090766940096
---列表中第-2-个字典---{'tt': 5}
---列表中第-3-个内存地址---2090766940096
---列表中第-3-个字典---{'tt': 5}
---list1---[{'tt': 5}, {'tt': 5}, {&
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。