をループしながら、私は2つのファイル持っている:main.pyとbatsol.py私のクラスには、私のコードの初めに呼び出し可能ではなく、私のテストは
batsol.pyはクラスとmain.pyが作成されて含まれているがクラスBatsolからのいくつかのインスタンス。 だから私は...あなたに
class Batsol:
def __init__(self, addressCan = None, name = None) :
self.addressCan = addressCan
self.name = name
#other stuff ...
を私のコードの簡潔なバージョンを紹介しますそれから私のmain.py:
from batsol import Batsol
# other import and code ...
print(callable(Batsol))
bs1 = Batsol()
# code...
if len(listener.ring_buffer) == 0 :
for Batsol in tab_BS :
try:
print(tab_BS[Batsol])
except (IndexError):
pass
# code...
while(True) :
# for and if interlocked
print(callable(Batsol))
bs2 = Batsol()
コンソールには示しています
True
False
Traceback (most recent call last):
File "./main.py", line 135, in <module>
bs2 = Batsol()
TypeError: 'int' object is not callable
第二部トレースバックの私は私のコードで行っている他のものにリンクされていません(スレッドは正常に終了していない...このような何か)、私の意見では
Exception ignored in: <module 'threading' from '/usr/lib/python3.4/threading.py'>
Traceback (most recent call last):
File "/usr/lib/python3.4/threading.py", line 1292, in _shutdown
t = _pickSomeNonDaemonThread()
File "/usr/lib/python3.4/threading.py", line 1300, in _pickSomeNonDaemonThread
if not t.daemon and t.is_alive():
TypeError: 'bool' object is not callable
なぜ私のテストループの中で私のオブジェクトがコール可能ではありませんか??? それは狂気私を駆動する...
NP:P – Lamoule74
は、あなたがどこかに#code 'には' Batsol = something'割り当てが存在しないことを確認しています... 'や'#interlocked'のためとあれば? –
私たちが 'code ... 'にあるものを見ることができないとすると、もっともらしい理由は' Batsol'という名前に 'int'オブジェクトが割り当てられていることです。あなたは「まあ、明らかに私はそれをしないだろう」と考えようとしていますが、それを知る方法はありませんし、自分自身の誤ったコードの意見は常に疑わしいです。私はあなたが問題をhttp://sscce.org/に還元することを提案することができます。あなたのコードから 'code ...'を取り除くと、問題がなくなり、 'code ... '私たちは間違ったコードを見たことがないので、私たちはあなたを助けることはできません。 –