"if" 声明在 twilio 短信项目中行为异常
"if" statement acting weird in twilio texting project
我正在尝试创建一个短信项目,我可以在其中发送一个 twilio 号码,并根据消息内容我可以使用自定义消息进行回复。我正在使用一串 if 语句来检查文本的主体并回复某些内容
app = Flask(__name__)
@app.route("/sms", methods=['GET', 'POST'])
def sms_reply():
reply_pointer = 0
body = request.values.get('Body', None)
resp = MessagingResponse()
print(body)
if(body == "Test1"): reply_pointer = 0
elif(body == "Test2"): reply_pointer = 1
elif(body == "Test3"): reply_pointer = 2
elif(body == "Test4"): reply_pointer = 3
print(reply_pointer)
我正在从我的 phone 发送这些消息,如果我通过 Test3 发送 Test1,我会得到正常结果,但是当我向 Test4 发送短信时,reply_pointer 设置为 0,如果我发送它,它会保持为 0文本 Test1、Test2 等。我已经尝试解决这个问题很长时间了,但我不知道发生了什么。
问题出在 body
内容上。
我在本地测试了你代码的底部,如果 body
确实是 "Test4"
:
,它就可以正常工作
>>> reply_pointer = 0
>>> body = "Test4"
>>>
>>> if(body == "Test1"): reply_pointer = 0
... elif(body == "Test2"): reply_pointer = 1
... elif(body == "Test3"): reply_pointer = 2
... elif(body == "Test4"): reply_pointer = 3
...
>> reply_pointer
3
检查 body
是否不包含任何其他字符。您可以将 body == "Test4"
替换为 "Test4" in body
,以检查匹配的子字符串。
我正在尝试创建一个短信项目,我可以在其中发送一个 twilio 号码,并根据消息内容我可以使用自定义消息进行回复。我正在使用一串 if 语句来检查文本的主体并回复某些内容
app = Flask(__name__)
@app.route("/sms", methods=['GET', 'POST'])
def sms_reply():
reply_pointer = 0
body = request.values.get('Body', None)
resp = MessagingResponse()
print(body)
if(body == "Test1"): reply_pointer = 0
elif(body == "Test2"): reply_pointer = 1
elif(body == "Test3"): reply_pointer = 2
elif(body == "Test4"): reply_pointer = 3
print(reply_pointer)
我正在从我的 phone 发送这些消息,如果我通过 Test3 发送 Test1,我会得到正常结果,但是当我向 Test4 发送短信时,reply_pointer 设置为 0,如果我发送它,它会保持为 0文本 Test1、Test2 等。我已经尝试解决这个问题很长时间了,但我不知道发生了什么。
问题出在 body
内容上。
我在本地测试了你代码的底部,如果 body
确实是 "Test4"
:
>>> reply_pointer = 0
>>> body = "Test4"
>>>
>>> if(body == "Test1"): reply_pointer = 0
... elif(body == "Test2"): reply_pointer = 1
... elif(body == "Test3"): reply_pointer = 2
... elif(body == "Test4"): reply_pointer = 3
...
>> reply_pointer
3
检查 body
是否不包含任何其他字符。您可以将 body == "Test4"
替换为 "Test4" in body
,以检查匹配的子字符串。