Ошибки Python For Loop на седоне Пасс

1

Я пытаюсь использовать цикл for следующим образом:

addresses = [0x30, 0x31, 0x32, 0x33]

for address in addresses:
   print(address)
   chirp = chirp.Chirp(address=address,
                       read_moist=True,
                       read_temp=True,
                       read_light=True,
                       min_moist=False,
                       max_moist=False,
                       temp_scale='farenheit',
                       temp_offset=0)
   chirp.trigger()
   log_values(address, chirp.moist, chirp.temp, chirp.light)
   time.sleep(1)

Кажется, что работает на первом проходе в консоли, я вижу 48, затем 49, затем получаю эту ошибку:

Traceback (most recent call last):
File "readings_logger.py", line 17, in <module>
chirp = chirp.Chirp(address=address,
AttributeError: 'Chirp' object has no attribute 'Chirp'

Который, я думаю, указывает, что он работал один раз. Тогда на втором проходе он не смог его запустить. Моя первая мысль была локальной проблемой, поэтому попытался удалить "chirp" нижний регистр "c", но это не помогло. Я предполагаю, что это поток, но я новичок в python и не знаю, как это предотвратить.

Теги:

1 ответ

-2
Лучший ответ

Вы переназначаете chirp, когда вы устанавливаете его равным chirp.Chirp(...).

Попробуйте изменить назначение переменной (после print(address) на что-то вроде loop_chirp = chirp.Chirp(...). Каждая последующая строка теперь будет заменена на loop_chirp за которой следует атрибут.

  • 1
    Это сработало хорошо! Нужно подождать 6 минут, чтобы принять ваш ответ!

Ещё вопросы

Сообщество Overcoder
Наверх
Меню