通过pandas生成的cvs数据利用nump.loadtxt读取的时候

tmp = np.loadtxt('test.csv', dtype=np.str, delimiter=",")

UnicodeEncodeError: 'latin-1' codec can't encode characters in position 57-58: ordinal not in range(256)

随后指定编码方式为uft-8依然报错

tmp = np.loadtxt(open("test.csv", encoding='ISO-8859-1'),dtype=np.str, delimiter=",")

最后看了别的博客,试了试改为encoding='ISO-8859-1'解决问题

ISO-8859-1

ISO-8859-1编码是单字节编码,向下兼容ASCII,其编码范围是0x00-0xFF,0x00-0x7F之间完全和ASCII一致,0x80-0x9F之间是控制字符,0xA0-0xFF之间是文字符号。
Latin1是ISO-8859-1的别名,有些环境下写作Latin-1。

所以为什么默认latin-1报错而ISO-8859-1可行

相关文章:

  • 2022-01-04
  • 2021-05-09
  • 2021-05-16
  • 2021-09-21
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2021-11-27
猜你喜欢
  • 2021-05-01
  • 2021-08-09
  • 2021-08-21
  • 2022-12-23
相关资源
相似解决方案