Python迭代
发布时间:2020-12-20 12:16:41 所属栏目:Python 来源:网络整理
导读:我正在尝试在 Python中创建一个简单的脚本,它将打印十六进制值并增加值,如下所示: char = 0 char2 = 0 def doublehex(): global char,char2 for x in range(255): char = char + 1 a = str(chr(char)).encode("hex") for p in range(255): char2 = char2 +
我正在尝试在
Python中创建一个简单的脚本,它将打印十六进制值并增加值,如下所示:
char = 0 char2 = 0 def doublehex(): global char,char2 for x in range(255): char = char + 1 a = str(chr(char)).encode("hex") for p in range(255): char2 = char2 + 1 b = str(chr(char2)).encode("hex") c = a+" "+b print "testing with:%s"%(c) doublehex() 输出: testing with:01 01 testing with:01 02 testing with:01 03 [snip] testing with:01 fd testing with:01 fe testing with:01 ff Traceback (most recent call last): File "test2.py",line 16,in doublehex b = str(chr(char2)).encode("hex") ValueError: chr() arg not in range(256) 其实我要做的是: 01 01 01 02 [snip] 01 ff 02 01 02 02 依此类推,直到ff ff.我的剧本有什么问题? 我似乎无法尝试: 00 01 00 02 我不知道为什么. 解决方法
您需要先设置char2 = 0
for p in range(255): 实际上,你不需要计数器 – char,char2 以下将从0到ff工作 for x in range(256): for p in range(256): print chr(x).encode("hex"),chr(p).encode("hex") (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |