ПРОБЛЕМА
Pyserial: последовательное USB-устройство имеет разные адреса в зависимости от того, устанавливаю ли я его на настольный компьютер (Catalina) или ноутбук (High Sierra):
ser = serial.Serial('/dev/cu.usbserial', 9600) #OSX High-Sierra
ser = serial.Serial('/dev/cu.usbserial-1D120', 9600) #OSX Catalina
Есть ли способ использовать подстановочный знак? /dev/su.usbseria*
. Цель — одна строка кода, которая будет обрабатывать любой случай.
Приветствуется любое понимание того, почему было добавлено -1D120
.
ИСПОЛЬЗОВАННАЯ ЛИТЕРАТУРА
Пример
import serial.tools.list_ports
#Find USB Port
def find_port(): #Finds which port the arduino is plugged into
ports = list(serial.tools.list_ports.comports())
for p in ports:
if '0403' in p[2]: #unique to Osepp Uno (arduino clone)
return p[0]
Предположим, что целевая строка (регулярное выражение) имеет формат:
/dev/cu.usbserial**************
Как можно изменить приведенный выше фрагмент кода, чтобы перехватывать и возвращать последовательное USB-устройство?