顯然通配符%x不被識別爲字節十六進制值,所以我得到錯誤「ValueError:invalid \ x escape」。如何避免在這種特殊情況下出現「ValueError:invalid x escape」錯誤?
如何避免這種情況?我不熟悉python。
for i in xrange(0,length):
if i % 2 == 0:
tempArray.append(unpack("B",payload_raw[x])[0]^key)
x += 1
else:
randomByte = random.randint(65,90)
tempArray.append(randomByte)
for i in range(0,len(tempArray)):
tempArray[i]="\x%x"%tempArray[i]
for i in range(0,len(tempArray),15):
outArray.append("\n'"+"".join(tempArray[i:i+15])+"'")
outArray = "".join(outArray)
devide = "i % 2;"
open_structure = open(structure).read()
code = open_structure % (junkA,outArray,junkB,key,length,devide)
b.write(code)
b.flush()
你希望用這條線完成什麼? '\ x'只會在字符串文字中做一些有用的事情;你不能以這種方式使用字符串格式。 – geoffspear