2016-10-30 5 views
0

私はプールのためにさまざまなものを管理するpythonスクリプトを構築しました。私はより多くの機能を追加し、すべてを実行している私のラズベリーパイでいくつかのタイムアウトで遊んでいます。今日、私はこのエラーを取得開始しました:Python - スレッド内の例外Thre​​ad-1(__bootstrap_inner内)

Exception in thread Thread-1: 
Traceback (most recent call last): 
    File "/usr/lib/python2.7/threading.py", line 810, in __bootstrap_inner 
self.run() 
    File "/usr/lib/python2.7/threading.py", line 1082, in run 
self.function(*self.args, **self.kwargs) 
TypeError: 'str' object is not callable 

だから私は最後の部分上に読み始めます(TypeError:「STR」オブジェクトは呼び出し可能ではないと私は変数としてそれを使用している必要があります考え出し、それは建てに干渉して私のコードでstrが見つかった場合(1300行)、これがすべて私が見つけたものなので、実際に問題を引き起こしている可能性のあるものは困っています。 strがあるショー:それはある

1) logger.info("Notify socket = {0}".format(str(s_adr))) 
2) ph_value = str(line) 
3)"/input/post.json?&node=" + str(pooldb.ph_node) 
4) orp_value = str(line2) 
5)"/input/post.json?&node=" + str(pooldb.orp_node) 
6) current_military_time = int(datetime.datetime.now().strftime('%H%M')) 

、コードこれらの1300+ラインに私は見つけていないと、それらのどれに「str」はのインスタンスのみが変数とされているので、私は、エラーを引き起こしているものについて混乱しています。

アイデアをいただければ幸いです。

おかげ

答えて

1

それはおそらくstr()組み込みとは何の関係もありません。 self.functionタイプstrであり、実際には文字列が呼び出し可能でないことを伝えるメッセージが表示されます。同様に:

>>> 'ab'(3) 
Traceback (most recent call last): 
    File "<stdin>", line 1, in <module> 
TypeError: 'str' object is not callable 
>>> 23(3) 
Traceback (most recent call last): 
    File "<stdin>", line 1, in <module> 
TypeError: 'int' object is not callable 
>>> [7](3) 
Traceback (most recent call last): 
    File "<stdin>", line 1, in <module> 
TypeError: 'list' object is not callable 

代わりにスレッドの作成方法を調べる必要があります。例えば、

>>> import threading 
>>> t = threading.Thread(target="abc") 
>>> t.start() 
Exception in thread Thread-1: 
Traceback (most recent call last): 
    File "C:\Python27\lib\threading.py", line 801, in __bootstrap_inner 
    self.run() 
    File "C:\Python27\lib\threading.py", line 754, in run 
    self.__target(*self.__args, **self.__kwargs) 
TypeError: 'str' object is not callable 
+0

OKは、ここで私はスレッドを呼び出しています方法です: '輸入 threading'' threading.Timer(pooldb.checktime、pool_level).start() ' – Richard

+0

誰もがここにテレパシーではありません。つまり、誰も 'pooldb.checktime'と' pool_level'が何であるかを推測することはできません。もし。例えば ​​'pool_level'が文字列にバインドされている場合、あなたが見ているエラーはあなたが見ているべきものです。 http://stackoverflow.com/help/mcve –

+0

私のお詫び申し上げます、私は本当にあなたが助けるために見る必要があるか分からない。 pool_levelは関数全体です。ここには1255行目に[link](https://github.com/rjsears/Pool_Fill_Control/blob/master/pool_fill_control.py)とpooldb.checktimeが94行目に表示されています。[link](https:// – Richard

関連する問題