半肾
精华
|
战斗力 鹅
|
回帖 0
注册时间 2002-7-8
|
本帖最后由 赤色彗星SEXY 于 2010-5-2 19:33 编辑
import binascii
f = open('/root/1.cfg','rb')
cfgFile = f.read()
f.close()
newFile = cfgFile[0]
for i in range(1,len(cfgFile)):
if cfgFile=="\xff":
newFile = newFile + cfgFile
print '%d are xff' %i
else:
print '%d not xff' %i
asciiNum=int(binascii.b2a_hex(cfgFile),16)
if(asciiNum%2==1):
asciiNum=(asciiNum+127)/2
newFile = newFile + binascii.a2b_hex(2*''+hex(asciiNum)[2:])
else:
asciiNum=asciiNum/2
newFile = newFile + binascii.a2b_hex(2*''+hex(asciiNum)[2:])
len(cfgFile)长度是21000多,但是循环子走到12100这样就结束了,请问下原因是?google不知道怎么找关键词。
cfg文件是522-c的配置文件....
12718 not xff
Traceback (most recent call last):
File "<stdin>", line 12, in <module>
TypeError: Odd-length string
走到12718就报错....搜不出什么结果,把newFile = newFile + binascii.a2b_hex(2*''+hex(asciiNum)[2:])拿了就可以走完.....但是这个是在哪里影响循环了? |
|