You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python如何捕获bluetooth socket报错并输出自定义提示信息

实现方法

使用Python的try-except异常捕获结构,精准匹配蓝牙模块抛出的对应错误码即可实现需求,修改后的完整代码如下:

import bluetooth

# 此处替换为你实际的设备地址与端口
bd_addr = "xx:xx:xx:xx:xx:xx"
port = 1

try:
    sock = bluetooth.BluetoothSocket(bluetooth.RFCOMM)
    sock.connect((bd_addr, port)) 
    print('连接成功!')
    sock.close()
except bluetooth.btcommon.BluetoothError as e:
    # 仅匹配目标主机未启动的112错误码
    if e.errno == 112:
        print("自定义错误:目标蓝牙设备未开机或不在可连接范围内,请检查后重试")
    # 其余蓝牙错误可按需处理,不需要的话可以直接抛出原异常
    else:
        raise

补充说明

  • 如果你不需要区分其他类型的蓝牙错误,只要捕获所有蓝牙连接失败的情况输出自定义提示,可以删掉if e.errno == 112的判断逻辑,直接在except块内输出提示即可
  • 部分版本的蓝牙模块会把BluetoothError暴露在顶层命名空间,你也可以把捕获语句改成except bluetooth.BluetoothError as e,兼容性更强

内容的提问来源于stack exchange,提问作者user8607392

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.10 05:06:02