IndexError: Список вне диапазона - PullRequest
0 голосов
/ 22 мая 2018

Из-за использования NTAG213 и MFRC522 (RFID), поэтому я прочитал базу данных из NTAG213.Так что я кое-что изменил, и вы можете увидеть, что проблема может быть в «num_to_dec», но я запутался, как это изменить.Вот как выглядит ошибка:

И это мой код

, так что это код, который я попробовал:

   def uid_to_num(self, uid):
       n = 0
       for i in range (0, 8): #due to ntag213 have 7 bytes UID
           n = n*256 + uid[i] #error
   return n

вы можете видеть на изображении, которое я прикрепил, и ошибка указывает на эту строку.

Ответы [ 2 ]

0 голосов
/ 27 июля 2018

Я также использую считыватель MFRC522, и иногда эта ошибка возникает для кода в моей карте.Поскольку все, что вы пишете в коде в Write.py файле, не подходит для Read.py file.Поэтому снова запишите карточку и используйте эту карточку в соответствии с данными.

Если вы пишете новые данные:

id:
time:

, но ваш файл чтения не соответствует этому

print (id)
print(text)

примечание: снова введите код карты и затем примените в файле Read

0 голосов
/ 22 мая 2018

Скорее всего, длина вашего uid меньше 8, поэтому он выходит из ошибки индекса.будет int(uid) работать на тебя?

https://docs.python.org/2/library/functions.html#int

...