【发布时间】:2015-06-14 07:47:15
【问题描述】:
我的程序从命令行参数中得到一个字符串,其中包含许多转义字符。
./myprog.py "\x41\x42\n"
当我打印“sys.argv[1]”时。 我登上了屏幕:
\x41\x42\n
有没有一种简单的方法来代替程序打印:
AB[newline]
【问题讨论】:
-
首先,
AB[newline]是什么。其次,你试过sys.argv[1].encode('ascii')吗? -
A 是“41”十六进制数的 ascii 字符。 B ... for "42" .... 我希望我的字符串能够像直接在 python 脚本中一样被处理。
-
是的,我明白了。你能回顾一下我的回答吗?它能解决你的问题吗?
-
是的,我尝试了 decode("hex") 和 decode("ascii")。两者都没有给出预期的结果。
-
是的,这就是我想要打印的内容。但是我用 python2 和 python3 进行测试,当 "\x41\x42\n" 作为参数传递时,它对我不起作用