我已经进入Python一段时间了,因为我还是初学者,我尽量保持简单。然而,我希望能够做到一件事,但无法做对。
我已经搜索过并发现了几个有点类似的问题,但我的回答主要是使用eval()
和exec()
,我读到这是非常糟糕的做法。使用字典似乎是另一个经常提出的选项,但我不知道如何将这个应用到我的案例中。
class pthead:
def __init__(self, name, port):
self.name = name
self.port = port
def initialize(self):
ser4.write(initialization_commands) # works
(self.port).write(initialization_commands) # doesn't work
UART.setup("UART4")
ser4 = serial.Serial(port="/dev/ttyO4", baudrate=9600, timeout=0.5)
head = pthead("kop", "ser4")
head.initialize()
将变量用作对象真的很难(希望我的术语是正确的)吗?我很难相信这不是常见的事情,例如在用户输入之后......
我使用python 2.7(用于遗留目的)。
答案 0 :(得分:1)
您没有正确使用它。您提供的端口不是端口,而是字符串`" ser4"。
{{1}}