#python
Вопрос:
Я пытаюсь зарегистрировать значение GPIO для raspberry pi, подобное этому
logging.info("value is ", str(GPIO.input(21)))
ошибка заключается в:
--- Logging error ---
Traceback (most recent call last):
File "/usr/lib/python3.7/logging/__init__.py", line 1034, in emit
msg = self.format(record)
File "/usr/lib/python3.7/logging/__init__.py", line 880, in format
return fmt.format(record)
File "/usr/lib/python3.7/logging/__init__.py", line 619, in format
record.message = record.getMessage()
File "/usr/lib/python3.7/logging/__init__.py", line 380, in getMessage
msg = msg % self.args
TypeError: not all arguments converted during string formatting
Call stack:
File "/etc/openhab/scripts/gpiomqttcontrol.py", line 80, in <module>
logging.info("value is ", str(GPIO.input(21)))
Message: 'value is '
Arguments: ('1',)
Комментарии:
1.
info
требуется только один аргумент, вы даете ему два. Создайте строку, которую вы хотите передать.2. Печать в консоль или сохранение в файл-это хорошие способы отслеживать, что делает программа. Если вы особенно хотите узнать состояние GPIO, вы можете посмотреть на PiScope Джоан, который позволяет записывать состояния GPIO и отображать их локально или на другом устройстве.