如何在串行中只获取COMx.工具.列表(Python)



我创建了一个程序,对所有连接的设备(序列(进行排序。我只想让列表得到COMx端口,而不是它们的描述。

import serial.tools.list_ports
ports = serial.tools.list_ports.comports()
List1 = []
for  port in sorted(ports):
List1.append(port)
print(*List1)

它总是显示描述,我不知道该怎么办?有人能帮我解决这个问题吗?有什么想法吗?我还阅读了pyserial文档,并试图将结果划分为端口、desc、hwid,但没有成功

如果您在Windows上,您将只能使用以下选项之一列出COM端口名称:

List1.append(port.name)

List1.append(port.device)

如果您坚持使用名为COMx的字符串,则可以将comports((更改为:

ports = serial.tools.list_ports.grep("COM[1-9][0-9]*")

serial.tools.list_ports
classserial.tols.list_ports.ListPortInfo

  • 设备
    完整的设备名称/路径,例如/dev/ttyUSB0。这也是索引访问时作为第一个元素返回的信息。

  • name
    短设备名称,例如ttyUSB0。

最新更新