python-3.x - 得到“b''”的答案是什么意思,我该如何克服它?
问题描述
我正在研究可以通过树莓派和 GSM 模块进行控制的自动化项目,但不幸的是,当我在 python 代码下尝试时,我没有得到我需要得到的确切消息,
而我执行我的代码并打印我收到的消息时我我只是得到b''的回复,所以,有人可以帮我解决这个问题,我该如何解决这个问题?
例如,我的发送消息是“LED1”,作为回复,我在打印(消息)部分收到“b''”,然后在不检查条件后直接执行“重试”条件。
import serial
import time
import os
ser = serial.Serial ("/dev/ttyS0", 9600, timeout=0) #9600 is the default for SIM900A modem
ser.write(('AT+CMGF=1\r').encode('utf-8'))
time.sleep(1)
ser.write(('AT+CMGDA="DEL ALL"\r').encode('utf-8'))
time.sleep(1)
message = ser.read(ser.inWaiting()) # inWaiting- get the number of bytes in the inout buffer
print (message)
while true:
if message == 'LED1':
print ("LED 1 is on")
elif message == "LED2":
print ("LED 2 is on")
elif messsage == 'EXIT':
print ("shuting down")
ser.close ()
break
else:
print ("Try again")
ser.close() #close the serial port
`
解决方案
推荐阅读
- c# - 如何使 Rx 回调在 ThreadPool 上运行?
- python - 将百分比添加到值(python)
- laravel - 在所有实例上发现不正确的应用程序版本。预期版本
- angular - Angular 11 CORS 问题代理端口正在增加
- javascript - 在 Objection.js 中,如何在查询中包含虚拟列?
- java - 我的应用未请求位置权限,权限被自动拒绝
- docker - Docker 运行没有问题,但我无法从给定的 url 访问该站点
- email - 连接 telnet 时出现“556 5.7.5 Invalid RFC missing body”之类的错误
- mysql - 无法为 MySQL 5.7 启用 jemalloc
- azure - 如果发布成功,为什么没有选项只能在 Slack 中发送 azurepipeline 警报?