我在基于Java代码的python中工作。
我在Java中有这个:
public static byte[] datosOEM = new byte[900000];
public static byte x1=0,x2=0,x3=0,x4=0,x5=0,x6=0;
我在Python中根据我发现的一些文档写了这个:
datosOEM=bytes([0x90, 0x00, 0x00])
x1=bytes([0x00])
x2=bytes([0x00])
x3=bytes([0x00])
x4=bytes([0x00])
x5=bytes([0x00])
x6=bytes([0x00])
当我运行我的程序时,它会向我显示:
Traceback (most recent call last):
File "test.py", line 63, in <module>
x1=datosOEM[k];
IndexError:string index out of range
我如何解决此问题?任何帮助都很受欢迎。
我的部分代码是:
...
response=port.read(8)
print(response)
k=0
C=0
conexion=True
if(conexion):
while(response>200):
while(C==0):
x1=datosOEM[k];
if(x1=1):
x2=datosOEM[k+1];
...
另外,我该怎样做才能不再重复这个错误?
提前感谢您的帮助
这篇文章由JasonMArcher编辑,非常感谢你。
答案 0 :(得分:0)
我不确定你想要实现的目标。也许是这样的?
datosOEM = [0]*900000 # a list of length 900.000, initialized with zeros
x1 = 0
x2 = 0
x3 = 0
# ...
也许你甚至想要这个:
datosOEM = [0]*900000 # a list of length 900.000, initialized with zeros
x = [0]*6
# ...
# ...
while (C==0):
x[0] = datosOEM[k];
if (x[0] = 1):
x[1] = datosOEM[k+1];
# ...