我正在寻找一种简单的方法来列出 PC 上所有可用的 com 端口。
我找到了这种方法,但它是特定于 Windows 的: Listing serial (COM) ports on Windows?
我在 Windows 7 PC 上使用 Python 3 和 pySerial。
我在 pySerial API ( http://pyserial.sourceforge.net/pyserial_api.html ) 中找到了一个函数 serial.tools.list_ports.comports()
列出了 com 端口(正是我想要的)。
import serial.tools.list_ports
print(list(serial.tools.list_ports.comports()))
但是好像不行。当我的 USB 到 COM 网关连接到 PC 时(我在设备管理器中看到 COM5),此 COM 端口不包含在 list_ports.comports()
返回的列表中。相反,我只得到似乎连接到调制解调器的 COM4(我在设备管理器的 COM&LPT 部分没有看到它)!
你知道为什么它不起作用吗?您是否有其他非系统特定的解决方案?
原文由 doom 发布,翻译遵循 CC BY-SA 4.0 许可协议
这是我使用的代码。
使用 Python 2 和 Python 3 在 Windows 8.1 x64、Windows 10 x64、Mac OS X 10.9.x / 10.10.x / 10.11.x 和 Ubuntu 14.04 / 14.10 / 15.04 / 15.10 上成功测试。