python-3.x - 可变默认参数允许访问来自其他类实例的数据
问题描述
通过函数中的可选参数,可以访问类的不同实例的数量。(见下面的代码)。我做错了什么,还是这种预期的行为?
Linux、Python 3.7.3 [GCC 7.3.0]
class Cat:
def __init__(self, name):
self.name = name
print(name)
def my(self, d = {}):
print('Before: ',d)
d[self.name] = str(self.name)
print('After: ',d)
tiger = Cat('Tiger')
tiger.my()
lion = Cat('Lion')
lion.my()
代码输出为:
Tiger
Before: {}
After: {'Tiger': 'Tiger'}
Lion
Before: {'Tiger': 'Tiger'}
After: {'Tiger': 'Tiger', 'Lion': 'Lion'}
解决方案
推荐阅读
- javascript - 前端/后端之间的导入
- node.js - 安装了最新的 node-sass 但项目不断尝试安装 node-sass 4.9.0
- godot - 我在 Youtube 上的一个视频的帮助下制作了一个 Godot 平台游戏我做了和他一样的一切,但我的角色拒绝向左移动
- python-3.x - 如何在 python 中计算 2、2D kde 图之间的公共体积/交集?
- javascript - 用户登录后如何打开侧边栏选项卡
- macos - cmake:如何在 macOS 上的应用程序包中找到二进制文件?
- django - Pinax npm 安装失败
- c# - C#:无法从 JSON 字符串中获取子值
- python - Odoo划分两个浮点字段 - AttributeError
- java - 在 Windows 上使用 JPackage 是否可以让 main .exe 不作为控制台运行,但让其他 laucher 作为控制台运行?