2014-10-29 34 views
-2

我想改變蟒蛇十六進制編輯器二元變化

ELIF(IN = edithex)

// 這部分有問題....

open.write文件的二進制值(b '\ XFF')< <這段代碼工作,但我想用(輸入數據)(寫入)

幫助我..

inedit = raw_input("change hex value >") 
OPEN.write(b'\xff') 





    elif (IN == 'edithex'): 
     editoffset = int(offset, 0) 
     OPEN.seek(editoffset) 
     inedit = raw_input("change hex value >") 
     OPEN.write(b'\xff') 
     print ('hex value changed ==>' + inedit) 
+0

請顯示完整的代碼。 – 2014-10-29 08:39:08

回答

1

如果我理解正確,您希望打印等同於用戶提供的十六進制代碼的二進制數據。這將是:

OPEN.write(chr(int(inedit, base=16))) 

這裏int()用於用戶整數提供的十六進制數轉換,並且chr()用於將其轉換成二進制字符。

作爲練習,當用戶輸入無效值時,您需要處理可能的ValueError s :)。

+0

謝謝它的作品! – b2n2w 2014-10-29 10:22:17