我必须说这是因为我是一个新手(学习),所以请放弃显而易见的遗漏,尊重一个对你的世界有限的人(Python) 。使用ord()转换字符串为ascii
我的目标是从用户获取字符串并将其转换为十六进制和ASCII字符串。我用hex(encode("hex")
)成功完成了这个任务,但是ascii没有。我找到了ord()
方法并尝试使用该方法,如果我只使用:print ord(i)
,则循环遍历并将值垂直打印到屏幕上,而不是我想要的那些值。所以,我试图用一个字符串数组捕获它们,这样我就可以将它们连接到一行字符串,并在'Hex'值下水平打印它们。我已经用尽了我的资源来解决这个问题......任何帮助都是感激。谢谢!
while True:
stringName = raw_input("Convert string to hex & ascii(type stop to quit): ")
if stringName == 'stop':
break
else:
convertedVal = stringName.encode("hex")
new_list = []
convertedVal.strip() #converts string into char
for i in convertedVal:
new_list = ord(i)
print "Hex value: " + convertedVal
print "Ascii value: " + new_list
你期待你的ASCII输出看起来像什么?逗号分隔的十进制值?即:“97,98,65,65” – yan 2011-04-13 21:04:44
如果用户输入字符串:'123431':hex = 313233343331 ascii = 49 50 51 52 51 49 – suffa 2011-04-13 23:31:07
谢谢DP ....此外,我并不是故意最后一条评论的ascii值之间的空格。 – suffa 2011-04-13 23:38:36