无论 what 的价值是什么,if条件的真实部分总是被执行。
what = ""
def sendPacket(where, what):
print("sendPacket()> i/p what :" + what)
if what:
zb.send('tx',dest_addr_long = where,dest_addr = UNKNOWN,data = what)
print('sendPacket()> Data: '+ what)
print('sendPacket()> Data sent to: '+ where )
else:
print('sendPacket()> data not sent')
我希望只有在 不等于null或空时才执行真正的部分。 任何帮助将不胜感激。
答案 0 :(得分:4)
明确询问您想要的条件:
if what and not what.isspace():
以上陈述what
不为空,不是空字符串,也不是只有空格的字符串。您的输入可能有一些换行符,制表符或其他不可打印的字符,这些字符会影响测试。