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:结束方法执行。
相关推荐
wanhengidc几秒前
小带宽服务器都有哪些用途
运维·服务器·网络·安全·智能手机
想唱rap4 分钟前
TCP套接字编程
java·linux·网络·c++·tcp/ip·mysql·ubuntu
Suckerbin5 分钟前
vulnyx-Reset靶场渗透
网络·web安全·网络安全
djjdjdjdjjdj7 分钟前
Redis怎样追踪系统执行的缓慢操作.txt
jvm·数据库·python
上海合宙LuatOS8 分钟前
LuatOS 课程-011 讲:GNSS应用开发
网络·物联网·lua·luatos
heiqizero8 分钟前
spark01-创建RDD
linux·前端·python
共享家95278 分钟前
轻量级日志模块实现:策略模式 + RAII 的工程化实践
linux·运维·服务器
老歌老听老掉牙9 分钟前
Python 错误处理:从基础语法到工程级实践的完整指南
python·错误处理
水木流年追梦9 分钟前
CodeTop Top 300 热门题目8-字符串解码
linux·运维·服务器·前端·算法·leetcode
杨云龙UP9 分钟前
Docker MySQL 5.7 全库备份到异地服务器实践记录_20260427
linux·运维·服务器·数据库·mysql·docker·容器