2017-08-15 21 views
0

この例外に関して私を助けることができるのは誰ですか?python AttributeError:クラスXXXには属性 '__class__'がありません

File "/root/anaconda2/lib/python2.7/site-packages/numba/dispatcher.py", line 305, in _compile_for_args 
argtypes.append(self.typeof_pyval(a)) 
File "/root/anaconda2/lib/python2.7/site-packages/numba/dispatcher.py", line 429, in typeof_pyval 
    File "/root/anaconda2/lib/python2.7/site-packages/numba/typing/typeof.py", line 28, in typeof 
ty = typeof_impl(val, c) 
File "/root/anaconda2/lib/python2.7/site-packages/singledispatch.py", line 210, in wrapper 
return dispatch(args[0].__class__)(*args, **kw) 
AttributeError: class FeatureEncoding has no attribute '__class__' 
+1

こんにちはコードを追加してください –

+0

どうやらよあなたが存在していない最初のコマンドライン引数( 'args [0]')の '__class__'属性にアクセスしています。問題のコードなしでこれをデバッグすることは不可能です。 –

+1

トレースバックに行くと、これはバグのようです。使用しているものの最新バージョンにアップグレードしてください。 –

答えて

0

すべてのインスタンスに__class__という属性があるわけではありません。一般的な推奨事項:ほとんどの場合、__class__の代わりにtypeを使用する方が良いでしょう。

>>> class A: 
... pass 
... 
>>> A.__class__ 
AttributeError: class A has no attribute '__class__' 

>>> int.__class__ # just for comparison the class of the int class 
<type 'type'> 

しかしtype作品:

>>> type(A) 
<type 'classobj'> 

注:古いスタイルのクラスはクラスがありませんたとえば

古いスタイルのクラスのインスタンスは、__class__属性を持っている

>>> a = A() 
>>> a.__class__ 
<class __main__.A at 0x0000000002E61168> 
関連する問題