繁体   English   中英

Python解码奇怪的字符

[英]Python decoding weird characters

卡尔蒙尼,我该如何在python中将这些字符解码为cérémonie?

 line.encode('utf-8').decode('utf-8')

我尝试在“ latin-1”和“ utf-8”中对其进行解码,但得到的结果相同:C�r�monie。 由于“行”是一个字符串,我无法直接对其进行解码?

我也打开文件时尝试使用和编码,但得到的结果相同:C�r�monie

f = open('data/u.item', 'r', encoding='latin-1')
lines = f.readlines()
for line in lines:
    print(line)

我使用binaire(2.7):

我这样做是因为python无法读取我的字符串

使用示例:

我在“ binaire字符串”中分隔字符串(数据)

binaire = ' '.join(format(ord(x), 'b') for x in data)

我发现与三明治的char char corespond

print binaire

我用字节替换:示例

binaire = binaire.replace("11101010", "1100101")  # replace ê by e in my case

我在python字符串中重新转换了我的字符串

res = bitstring_to_bytes(binaire)



def bitstring_to_bytes(tab):
      tab = tab.split(" ")
      string = ""
      for t in tab:
            string  = string + bitchar_to_bytes(t)
      return string

def bitchar_to_bytes(s):
    v = int(s, 2)
    b = bytearray()
    while v:
          b.append(v & 0xff)
      v >>= 8
    return bytes(b[::-1])

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM