赋值\xhh时,hh可以做为变量传入吗?
赋值\xhh时,hh是否可以做为变量传入?
实际场景:
输入两个物理mac地址:
src_mac='FA:16:3E:8C:82:39
dst_mac='FA:16:3E:8E:4B:68'
输出得到两个\xhh格式的变量:
src='\xfa\x16\x3e\x8c\x82\x39'
dst='\xfa\x16\x3e\x8e\x4b\x68'
实现过程中发现字符替代后转义字符\x已经失效, 如下:
dst1 = r'\x' + dst_mac.lower().replace(':',r'\x')
src1= r'\x' + src_mac.lower().replace(':',r'\x')
>>> print src,dst
\xfa\x16\x3e\x8c\x82\x39 \xfa\x16\x3e\x8e\x4b\x68
实际我希望得到的变量如下:
src='\xfa\x16\x3e\x8c\x82\x39'
dst='\xfa\x16\x3e\x8e\x4b\x68
>>> print src,dst
ú>フツ9 \xfa\x16\x3e\x8e\x4b\x68
从现象上看应该是实现中把\x当成了实际字符,实际上\xXX才是表示 一个字符
所以回到了开始的问题:“赋值\xhh时,hh是否可以做为变量传入?”