Python中使用serial.tools.list_portscomports()函数获取可用端口列表
发布时间:2024-01-14 18:18:45
Python的serial模块提供了与串行端口通信相关的功能。在使用串行通信时,我们需要知道可用的串口端口列表以及它们的相关信息。
在Python中,我们可以使用serial.tools.list_ports.comports()函数来获取可用的串口端口列表。这个函数返回一个生成器对象,可以使用for循环逐个打印或处理串口端口信息。
下面是一个使用serial.tools.list_ports.comports()函数获取可用端口列表的示例:
import serial.tools.list_ports
# 获取串口端口列表
ports = list(serial.tools.list_ports.comports())
# 遍历端口列表
for port in ports:
# 打印端口名称
print(port.device)
# 打印端口描述信息
print(port.description)
# 打印供应商ID和产品ID
print(port.vid)
print(port.pid)
# 打印是否是虚拟端口
print(port.is_virtual)
# 打印端口使用者
print(port.usb_info())
# 打印序列号
print(port.serial_number)
# 打印位置
print(port.location)
# 打印制造商
print(port.manufacturer)
# 打印产品描述信息
print(port.product)
print('-----------------------------------')
在上面的示例中,首先导入了serial.tools.list_ports模块,然后调用comports()函数获取可用的串口端口列表。由于comports()函数返回一个生成器对象,我们需要使用list()函数将其转换为列表。然后,我们使用for循环遍历端口列表,并打印了每个端口的相关信息。
通过上面的示例,我们可以获得每个可用串口端口的名称、描述信息、供应商ID和产品ID、是否是虚拟端口、端口使用者、序列号、位置、制造商和产品描述信息等。
需要注意的是,要使用serial.tools.list_ports.comports()函数,我们需要安装pySerial库。可以使用pip install pyserial命令来安装pySerial库。
总结起来,使用serial.tools.list_ports.comports()函数可以方便地获取可用的串口端口列表,并获取每个端口的相关信息。这对于进行串行通信的开发非常有用。
