在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>
答案 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: