我有下面的代码,我想在运行时感受功能图的参数。它应该像
#devices = map(InputDevice, ('/dev/input/event15','/dev/input/event16'))
但是当我尝试在运行时这样做时,它不起作用。这是我的尝试:
readers = ""
devices = map(InputDevice, list_devices())
for dev in devices:
if "深" in dev.name or "Barcode" in dev.name:
if readers == "":
readers = "'" + dev.fn + "'"
else:
readers = readers + ", '" + dev.fn + "'"
devices = map(InputDevice, (readers))
读者完全显示' / dev / input / event15' / dev / input / event16' ,但此字符串不能用作参数。我想因为逗号它不起作用。有谁知道我该怎么做?
此功能是evdev的一部分。
谢谢你们! 最好的祝福, 埃里克
答案 0 :(得分:1)
在我看来,您希望readers
成为非字符串可迭代的。也许试试:
devices = map(InputDevice, readers.split(','))
这会将readers
拆分为一个列表,而不是将其保留为字符串。
这仍然不是特别干净的代码。最好是首先建立一个列表:
readers = []
devices = map(InputDevice, list_devices())
for dev in devices:
if "深" in dev.name or "Barcode" in dev.name:
readers.append(dev.fn)
devices = map(InputDevice, (readers))