攻防世界 Misc 掀桌子 简单python

题目给了如下字符串c8e9aca0c6f2e5f3e8c4efe7a1a0d4e8e5a0e6ece1e7a0e9f3baa0e8eafae3f9e4eafae2eae4e3eaebfaebe3f5e7e9f3e4e3e8eaf9eaf3e2e4e6f2
可以看出只有a-f 0-9,而且这么长,那应该是十六进制,两两一组,比如c8 转换成10进制是200 e9 转换后是233 ac是172 发现都大于128 ASCII码是0-127 所以减去128 前三个为72 105 44 对应的字符为 Hi, 后面的一个一个算明显不划算,所以得写python脚本
攻防世界 Misc 掀桌子 简单python_第1张图片

m = "c8e9aca0c6f2e5f3e8c4efe7a1a0d4e8e5a0e6ece1e7a0e9f3baa0e8eafae3f9e4eafae2eae4e3eaebfaebe3f5e7e9f3e4e3e8eaf9eaf3e2e4e6f2"
num=""
for i in range(0,len(m),2):   #从0到m的最后一个字符,跳2个,即i=c  i=e ···
    hex = m[i:i+2]           #i=0 到i=2 即c8
    num += chr(int(hex,16)-128) # int('c8',16)  字符串c8 为16进制  转换成int 十进制 减去128 再转换成字符型 放到num 累加
print(num)

我决定好好学python了!基础的都不会啦·····

你可能感兴趣的:(攻防世界)