读取与声明字符串python之间的区别

时间:2016-08-05 14:08:36

标签: python string pyserial

在python中声明一个字符串与读取它们的值之间有什么区别(如果有的话)?

我有一段代码如下:

file = open('comport.txt','r')

for line in file:
    if "comport" in line:
        comport = line[9:]

和文本文件看起来像:

comport= COM1

当我尝试打开串口时,我会这样做:

ser = serial.Serial(comport,baudrate=115200)

哪个不起作用(一堆错误),但这有效:

comport = 'COM1'
ser = serial.Serial(comport,baudrate=115200)

我已经尝试将引号放在文本文件中,这也不起作用,我很确定我也正确分割我的行,因为当我尝试打印时,它会打印COM1 < / p>

1 个答案:

答案 0 :(得分:2)

\n之后可能还有一个换行符"COM1"。试试这个:

    comport = line[9:].strip()

或者这个:

    comport = line.split("=")[1].strip()

此外,您应该使用with打开并关闭该文件,并且不要将file用作变量名称。

with open('comport.txt','r') as f:
    for line in f: