0

我有一个排序的字典

{ 1L: '<'New_Config (type: 'String') (id: 1L) (value: 4L) (name: 'account_receivable')'>', 2L: '<'New_Config (type: 'string') (id: 2L) (value: 5L) (name: 'account_payable')'>', 3L: '<'New_Config (type: 'String') (id: 3L) (value: 8L) (name: 'account_cogs ')'>', 4L: '<'New_Config (type: 'String') (id: 4L)(value: 9L)(name: 'account_retained_earning')'>', 5L: '<'New_Config (type: 'String') (id: 5L) (value: 6L) (name: 'account_income')'>' }

这里 new_config 是对象,我必须访问对象元素

我怎样才能访问对象属性????假设我想访问 new_config.name

4

2 回答 2

1

Python 字典没有排序。如果您有一些自定义类实现了一些映射方法(如字典)但覆盖了其中一些以呈现维护某些(排序)顺序的外观,那么其实现细节也可能解释为什么您的示例看起来不像有效的 Python。

{
1L: New_Config(...)(...)(...)...,
2L: New_config(...)(...)(...)...,

... 看起来几乎有点像 Python。1L, 2L 是大整数的表示(如果这是字典,则作为键)。New_Config(...) 看起来有点像 a reprof something,而后面的 (..) 就像一个函数调用。

所以,我的建议是不要试图根据记忆或对你认为你看到的东西的一些模糊概念来发布问题。实际上粘贴一些代码。

如果您确实在那里有对象,那么您将使用new_config.attribute或可能(如果有人将他们的类编码为令人讨厌)通过一些new_config.accessor()方法调用(如foo.getThis()foo.getThat()或同样愚蠢的东西)来访问它们的属性。

于 2009-08-22T07:59:22.200 回答
0
class Foo(object):
    def __init__(self,name,weight):
        self.name = name
        self.weight = weight

>>> D = {}
>>> D['1L'] = Foo("James",67)
>>> D['2L'] = Foo("Jack",83)
>>> D
{'2L': <__main__.Foo object at 0x013EB330>,
 '1L': <__main__.Foo object at 0x00C402D0>}

>>> D['1L'].name
'James'

一般来说,

DictName[KEY]为您提供该KEY的VALUE

因此要访问VALUE是可以使用的对象的属性

DictName[KEY].attritbute

于 2009-08-22T18:55:48.283 回答