从引用python 3.4串口之间提取字符串

时间:2015-01-30 09:29:50

标签: python extract pyserial quotations

我想确定我的计算机的哪个串口正在使用,我这样做(VSPE是一个虚拟串口仿真器,就像Eltima虚拟串口驱动程序7.1)和以下代码

import sys
import glob
import serial
def serial_ports():
    """Lists serial ports
    :raises EnvironmentError:
        On unsupported or unknown platforms
    :returns:
        A list of available serial ports
    """
    if sys.platform.startswith('win'):
        ports = ['COM' + str(i + 1) for i in range(256)]
    elif sys.platform.startswith('linux') or     sys.platform.startswith('cygwin'):
        ports = glob.glob('/dev/tty[A-Za-z]*')
    elif sys.platform.startswith('darwin'):
        ports = glob.glob('/dev/tty.*')
    else:
        raise EnvironmentError('Unsupported platform')
    result = []
    for port in ports:
        try:
            s = serial.Serial(port)
            s.close()
            result.append(port)
        except (OSError, serial.SerialException):
            pass
    return result
a=serial_ports()
print(a)

现在这段代码给了我

>>>['COM9'] 

作为答案

我的问题是如何摆脱这个问题:[' ']

我只想要COM9或至少9而不是其他任何内容。

1 个答案:

答案 0 :(得分:0)

['COM9']是一个包含一个元素的列表。要获取此元素,请使用索引0

l = ['COM9']
s = l[0]

如果您只想要数字9,请使用

d = s[-1]

如果要将结果("9")转换为整数,请使用

i = int(d)