IndexError:列出超出范围

时间:2018-05-21 23:40:11

标签: python python-2.7 raspberry-pi3 rfid

由于使用NTAG213和MFRC522(RFID),所以我从NTAG213读取数据库。所以我改变了一些东西,你可以看到问题可能在“num_to_dec”中,但我很困惑如何改变它。这就是错误的外观:

这是我的code

所以这是我试过的代码:

   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 :(得分:0)

最有可能的是,你的uid长度小于8,因此它没有索引错误。 int(uid)会为你工作吗?

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

答案 1 :(得分:0)

我也在使用MFRC522读卡器,有时我的卡中的代码会出现此错误。由于您在'object' object has no attribute 'b'文件中编写的代码都不适合Write.py使用。 因此,再次写卡并根据输入使用该卡。

如果您写入新数据:

Read.py file

但您的读取文件不符合

id:
time:

注意:再次写入卡代码,然后在读取文件中应用