如何在Python中比较不同的编码字符串
我需要加载两个不同的json文件并将其保存在数组中 我将这两个数组转换为如何在Python中比较不同的编码字符串,python,character-encoding,Python,Character Encoding,我需要加载两个不同的json文件并将其保存在数组中 我将这两个数组转换为集合A和集合B 我想找出集合A和集合B 所以我尝试了setA^setb 但结果并不像我预期的那样 实际上,这两个数组是相同的,不考虑编码 所以我得到了len(setA^setb)是0,因为它们的编码不同 Python用什么方法将不同的编码字符串转换成相同的编码 数组A "'Original'", "'Original'", "'Original'", "'Original'", "'Originale'", "u'\u30a
集合A
和集合B
我想找出集合A
和集合B
所以我尝试了setA^setb
但结果并不像我预期的那样
实际上,这两个数组是相同的,不考虑编码
所以我得到了len(setA^setb)
是0
,因为它们的编码不同
Python用什么方法将不同的编码字符串转换成相同的编码
数组A
"'Original'", "'Original'", "'Original'", "'Original'", "'Originale'", "u'\u30aa\u30ea\u30b8\u30ca\u30eb'", "'Original'", "u'\u539f\u59cb\u7684'", "u'\u539f\u59cb'", "u'Origin\xe1ln\xed'", "u'\u041d\u043e\u0440\u043c\u0430\u043b\u044c\u043d. \u0432\u0438\u0434'",
阵列B
"'Original'", "'Original'", "'Original'", "'Original'", "'Originale'", "'\xe3\x82\xaa\xe3\x83\xaa\xe3\x82\xb8\xe3\x83\x8a\xe3\x83\xab'", "'Original'", "'\xe5\x8e\x9f\xe5\xa7\x8b\xe7\x9a\x84'", "'\xe5\x8e\x9f\xe5\xa7\x8b'", "'Origin\xc3\xa1ln\xc3\xad'", "'\xd0\x9d\xd0\xbe\xd1\x80\xd0\xbc\xd0\xb0\xd0\xbb\xd1\x8c\xd0\xbd. \xd0\xb2\xd0\xb8\xd0\xb4'",
你在这里展示的两个阵列显然不完全相同——甚至不接近。也许数组B中的某些元素是经过编码的,而数组A中的相应元素是Unicode字符串?在这种情况下,您必须知道数组B中每个字符串使用的编码。您知道吗?数组A有unicode数据,数组B有十六进制数据。两个比较它们,你必须将它们转换为相同的格式(ascii)。您可以使用
.decode(“hex”)
将hex转换为ascii,并使用将unicode转换为ascii的.encode(“ascii”,“忽略”)
。注意:从一种格式转换到另一种格式还有许多其他方法。