1

オブジェクト foo がある場合、そのクラス オブジェクトを次の方法で取得できます。

str(foo.__class__)

ただし、必要なのはクラスの名前(たとえば「Foo」)だけです。上記の行に沿って何かが得られます

"<class 'my.package.Foo'>"

正規表現で簡単に取得できることは知っていますが、もっと「クリーンな」方法があるかどうか知りたいです。

4

3 に答える 3

4

試す

__class__.__name__
于 2009-05-14T20:02:59.227 に答える
3

foo .__ class __.__ name__は、必要な結果を提供するはずです。

于 2009-05-14T20:03:52.703 に答える
1
Python 3.0.1 (r301:69561, Feb 13 2009, 20:04:18) [MSC v.1500 32 bit (Intel)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> class foo:
...     x = 1
...
>>> f = foo()
>>> f.__class__.__name__
'foo'
>>>
于 2009-05-14T20:06:40.293 に答える