获取电脑上所有的串口名可以通过Python的第三方库pyserial
实现。下面是具体的步骤和示例说明:
安装pyserial库
首先,需要在电脑上安装pyserial
库。可以通过pip命令进行安装:
pip install pyserial
导入pyserial库
在编写Python代码前,需要先导入pyserial
库。可以通过以下代码实现:
import serial.tools.list_ports
这里的list_ports
模块提供了comports()
函数,用于获取系统中所有的串口对象。
获取所有串口名
通过comports()
函数获取系统中所有的串口对象,并将它们的名字存入一个列表中。可以使用以下代码:
port_list = list(serial.tools.list_ports.comports())
port_name_list = [port[0] for port in port_list]
print(port_name_list)
这里,comports()
函数返回一个包含串口对象的列表,每个串口对象包含串口名称、设备类型、描述信息以及与该对象相关的其他信息。对于每个串口对象,我们将其名称存入一个列表中。最后,使用print()
函数输出所有串口名。
以下是一个示例输出,其中列出了计算机上所有摄像头、麦克风、串口等输入设备的名称:
['/dev/cu.Bluetooth-Incoming-Port', '/dev/cu.JabraLink-MICROPHONE', '/dev/cu.JabraLink-SPEAKER', '/dev/cu.usbserial-1440', '/dev/cu.usbserial-1460', '/dev/cu.usbserial-1620', '/dev/cu.usbserial-1650', '/dev/cu.usbserial-1660', '/dev/cu.usbserial-1670']
获取指定串口名
如果想要获取特定名称的串口名,可以通过检查串口对象的描述信息或PID等属性过滤。例如,如果要获取名称为"USB Serial Port"的串口名,可以使用以下代码:
port_list = list(serial.tools.list_ports.comports())
for port in port_list:
if "USB Serial Port" in port.description:
print(port.name)
这里,description
属性包含串口对象的描述信息。在if
语句中检查"USB Serial Port"是否出现在描述信息中,如果是,则将该串口名存入列表中。
示例输出:
/dev/tty.usbserial-1420
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:python输出电脑上所有的串口名的方法 - Python技术站