我的类中有一个函数:getNested(),它作为嵌套字典获取一组数据。将这些数据转换为属性的最佳实践是什么,然后我可以在实例化类时使用这些属性?如;运行下面示例中的line test.nestedDict.A,理想情况下会返回{'Aa':['1','2','3',],'Ab':'item'}
class MyClass( object ):
def __init__( self ):
self._nestedDict = None
self.getNested()
def getNested( self ):
self._nestedDict = {'A':{'Aa': ['1', '2', '3',], 'Ab':'item'}, 'B':{'Ba': ['4', '5', '6',], 'Bb':'item2'} }
@property
def nestedDict( self ):
return self._nestedDict
test = MyClass()
test.nestedDict
# Result: {'A': {'Aa': ['1', '2', '3'], 'Ab': 'item'},'B': {'Ba': ['4', '5', '6'], 'Bb': 'item2'}} #
test.nestedDict['A']
# Result: {'Aa': ['1', '2', '3'], 'Ab': 'item'} #
test.nestedDict.A
# Error: AttributeError: line 1: 'dict' object has no attribute 'A' #
实现所需的一种方法是定义并使用从
dict
继承的helper类。然后,在此类中,将嵌套字典的键设置为该类的属性这看起来像:
然后,您可以使用它执行以下操作:
请注意,我允许自己更改变量和方法的名称以符合PEP8 styling
相关问题 更多 >
编程相关推荐