从PubNub接收消息时如何去除冗余信息,仅获取Yes/No
提取PubNub消息中的"Yes/No"内容
很简单就能解决这个问题!你现在看到的{u'text':'Yes'}其实是Python字典对象的字符串形式,result.message返回的就是这个完整的字典,所以直接打印它会显示整个结构。要拿到你需要的"Yes"或"No",只需要访问字典里的text键即可。
修改后的核心代码
while True: result = my_listener.wait_for_message_on(channel) # 直接提取字典中text字段对应的值 print(result.message['text'])
可选的健壮性优化
如果担心某些情况下消息格式异常(比如缺少text键),可以用字典的get()方法来避免抛出KeyError,同时设置一个默认值兜底:
while True: result = my_listener.wait_for_message_on(channel) # 若text键不存在,返回默认值"Unknown" print(result.message.get('text', 'Unknown'))
这样就能精准输出你需要的"Yes"或"No"内容啦!
内容的提问来源于stack exchange,提问作者Parth Kabariya
相关产品推荐
相关产品推荐

