Python获取当前系统中可用的串口设备

python 复制代码
import serial.tools.list_ports

def checkDevice(self):
    port_data = []
    for port in serial.tools.list_ports.comports():
      port_data.append(port.description)

    if port_data:
      for devInfo in port_data:
        self.toolLogPrinting('可用设备' + devInfo)
      RET =  True
    else:
      self.toolLogPrinting('未连接可用设备...')
      RET =  False
    port_data.clear()
    return RET

代码功能解释

这段代码的功能是检查当前系统中可用的串口设备,并将结果打印到日志中。

具体步骤如下:

  1. **初始化列表**:创建一个空列表 `port_data` 用于存储串口设备描述。

  2. **遍历串口**:使用 `serial.tools.list_ports.comports()` 获取所有串口设备,并将每个设备的描述添加到 `port_data` 列表中。

  3. **判断设备是否存在**: - 如果 `port_data` 不为空,遍历并打印每个设备的描述信息,返回 `True`。 - 如果 `port_data` 为空,打印"未连接可用设备...",返回 `False`。

  4. **清理列表**:清空 `port_data` 列表。

控制流图

解释

  • A :开始执行 checkDevice 方法。
  • B :调用 serial.tools.list_ports.comports() 获取所有串口设备。
  • C :遍历获取到的串口设备,并将描述信息存入 port_data 列表。
  • D :判断 port_data 列表是否为空。
  • E :如果列表为空,打印"未连接可用设备...",并返回 False。
  • F:如果列表不为空,遍历并打印每个设备的描述信息。
  • G :返回 True。
  • H :返回 False。
  • I :清空 port_data 列表。
  • J:结束方法执行。
相关推荐
星恒讯工业路由器18 小时前
从5G-A到6G:工业通信网络的技术演进与产业落地
网络·物联网·5g·智能路由器·工业路由器·工业物联网·5g-a
砚凝霜18 小时前
【软考信息安全】第二十一章 网络设备安全概述与安全机制
网络·安全
Escalating_xu19 小时前
【Linux 网络编程】网络基础概念(下):IP、端口、Socket 与网络字节序,写代码前先打好基础
linux·网络·tcp/ip
刚入门的大一新生19 小时前
Linux-Ext系列文件系统
linux·运维·服务器
前端 贾公子19 小时前
LangGraph == 图的状态(State)管理 (中)
开发语言·数据库·python
无足鸟ICT19 小时前
【RHCA+】select循环
linux
SKH.20 小时前
Linux驱动-led、beep
linux·运维·单片机
the局外人20 小时前
FastAPI中jwt的基本使用与实践
后端·python·fastapi
zbtlink20 小时前
网络卡在哪儿:空口时间、会话表容量与接入速率的可复现定位方法
网络·智能路由器