假设我们有一个对象是为了方便使用数组,并且有一些内部存储。你知道吗
假设我们有一个方法应该做些什么。例如,您可能需要将其输入“volume”。我认为这是相当直观的,您可能只想检查数据数组是否已经存在于内存中,或者使用调用函数时发送的数组。你知道吗
我很好奇这样做的标准方法是
a)完全不要这样做,有不同的callable
b)Try/Except或If/Else结构
c)dict.get(keyorarray, keyorarray)
(它尝试寻找键,失败时返回对象)
示例:
class Spheres(object):
def __init__(self):
self._dict = dict()
def volumes(self, radii='radii'):
return (4/3) * math.pi * self._dict.get(radii, radii)**3
我可以手动处理数组,在脚本的命名空间中跟踪它们,或者在某些情况下可以将它们嵌入到对象中(即:spheres['radii']=radii),然后可以调用spheres.volumes(spheres['radii'])
而不是调用spheres.volumes()
或spheres.volumes(radii)
。你知道吗
基本上我想提供这个选项,但是如果用户在对象中存储了一堆向量,我想让算法变得“聪明”,只使用它们已经有的数据。你知道吗
我认为解决你问题的办法是:
我想你想要的是一个^{} 。这允许您指定一个默认的factory callable,如果dict中不存在键,它将返回(例如)一个新的空列表;否则,它将返回找到的值。你知道吗
例如:
相关问题 更多 >
编程相关推荐