使用python词典

时间:2016-05-02 21:51:08

标签: python pyserial

我是python的新手,喜欢字典的想法,但我不确定如何在这种情况下使用它。我想一次性设置串行对象参数,而不是像我在下面所做的那样一次设置一个。如何通过将iso_com1串行对象设置为同时配置文件的ISOSerialPort部分中的所有值来完成此操作?有获取和应用带字典的串行函数,但我仍然不确定语法。感谢。

import sys, os
import serial
import ConfigParser

pipeout = os.open('USB0Serial', os.O_WRONLY)

config = ConfigParser.ConfigParser()
config.read("serial.config")

iso_com1 = serial.Serial()

iso_com1.port = config.get('ISOSerialPort1', 'port')
iso_com1.baudrate = config.get('ISOSerialPort1', 'baudrate')
iso_com1.open()

while 1:
        line =  iso_com1.readline()
        os.write(pipeout, line)

配置文件如下所示:

[ISOSerialPort1]
port = /dev/ttyUSB0
baudrate = 9600
bytesize = EIGHTBITS
parity = PARITY_NONE
stopbits = STOPBITS_ONE
timeout = 0
xonxoff = NONE
rtscts = FALSE
dsrdtr = FALSE
write_timeout = 0
inter_byte_timeout = NONE

1 个答案:

答案 0 :(得分:1)

您可以执行以下操作:

iso_com1.apply_settings(dict(config.items('ISOSerialPort1')))

读取配置文件中的所有参数。但是你应该知道,只有支持的键应该在本节中,它们应该是正确的顺序。