2016-08-19 7 views
-3
while True: 
op_list = [] 

for op in client.longPoll(): 
    op_list.append(op) 

for op in op_list: 
    sender = op[0] 
    receiver = op[1] 
    message = op[2] 

    msg = message.text 
    if msg("help"): 
    receiver.sendMessage('why?') 

if msg("help"): 

TypeError: 'str'オブジェクトは呼び出し可能ではありませんが、誰でも手伝えますか?TypeError: 'str'オブジェクトがpythonで呼び出せません2.7

+2

これは正しい形式ではありません。 '真実:何?何もない? –

+2

msg( "help")はほぼ確実に問題です。message.textは文字列で、引数 "help"で呼び出すようにしています。それが等しいかどうかをチェックするには、msg == "help"を実行してください – James

+1

このコードは正しくインデントされていませんので、主な問題に集中できるように修正してください。 'msg(" help ")'は何を期待していますか? –

答えて

0

問題は12行目にあります。msgはテキストであり、呼び出し可能ではないことは明らかです。あなたは2つの文字列を比較したいのであれば、確かに同じことをする必要があります。

if msg == "help": 
    receiver.sendMessage('why?') 
+0

真しばらく: op_list = client.longPoll()でOPのため[] : 送信者= OP: op_list.append(OP)op_listでのオペアンプのための [0] 受信= OP [1] = OP メッセージ[2] MSG = message.text 場合MSG == "ヘルプ": receiver.sendMessage( 'なぜ?') MSG場合==「ヘルプ": ^ インデントエラー:インデントが外側インデントレベルと一致しません –

+0

このコードをマイn質問ですか?ここでインデントを理解できません。 – Abhinav

関連する問題