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 は object です。object 要素にアクセスする必要があります

どうすればオブジェクトのプロパティにアクセスできますか???? new_config.name にアクセスしたいとします

4

2 に答える 2

1

Python 辞書はソートされません。いくつかのマッピングメソッド(辞書など)を実装しているが、それらのいくつかをオーバーライドして、いくつかの(ソートされた)順序を維持しているように見えるカスタムクラスがある場合、その実装の詳細は、例が見えない理由も説明するかもしれません有効な Python のように。

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

...ほとんどPythonのように見えます。1L、2L は、大きな整数の表現です (これが辞書である場合のキーとして)。New_Config(...)reprは何かの のように見え、それに続く (..) は関数呼び出しのようになります。

したがって、私のアドバイスは、記憶から、または見たと思ったものの漠然とした概念から質問を投稿しようとしないことです. 実際にいくつかのコードを貼り付けます。

実際にそこにオブジェクトがある場合は、いくつかのメソッド呼び出し ( andまたは何か同様に無意味なもの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 に答える