python:SyntaxError:Non-UTF-8 code starting with ‘\xa1‘ in file.....

### 1、错误类型描述

python编程,用pandas库导入数据的时候,遇到一个错误:

> SyntaxError:
> Non-UTF-8 code starting with '\xa1' in file
> D:/ssslll/programe/PycharmProjects/MDT_bigdata_tables/[weakcover1.py](https://links.jianshu.com/go?to=http%3A%2F%2Fweakcover1.py)
> on line 7, but no encoding declared; see [[http://python.org/dev/peps/pep-0263/](https://links.jianshu.com/go?to=http%3A%2F%2Fpython.org%2Fdev%2Fpeps%2Fpep-0263%2F)](http://python.org/dev/peps/pep-0263/%5d(https:/links.jianshu.com/go?to=http%3A%2F%2Fpython.org%2Fdev%2Fpeps%2Fpep-0263%2F))
> for details

### 2、问题解决过程

在网上查了一些解决办法,都没有解决,包含以下方法:

- 1、在代码首行添加如下

```bash

1 #
coding = gbk
```

- 2、在代码首行添加如下

```bash

1 #
coding = utf-8

```

但是都没有解决,程序依然报错。于是我想起来gbk有几种格式,试了下,结果成功了。如下:

```bash

1 #
coding=gb2312

```

之后,程序正常运行。

### 3、附:GB2312与GBK的区别

- 1、GBK:
  汉字国标扩展码,基本上采用了原来GB2312-80所有的汉字及码位,并涵盖了原Unicode中所有的汉字20902,总共收录了883个符号, 21003个汉字及提供了1894个造字码位。 Microsoft简体版中文Windows 95就是以GBK为内码,又由于GBK同时也涵盖了Unicode所有CJK汉字,所以也可以和Unicode做一一对应。
- 2、GB码,全称是GB2312-80《信息交换用汉字编码字符集
  基本集》,1980年发布,是中文信息处理的国家标准,在大陆及海外使用简体中文的地区(如新加坡等)是强制使用的唯一中文编码。P-Windows3.2和苹果OS就是以GB2312为基本汉字编码, Windows 95/98则以GBK为基本汉字编码、但兼容支持GB2312。GB码共收录6763个简体汉字、682个符号,其中汉字部分:一级字3755,以拼音排序,二级字3008,以偏旁排序。该标准的制定和应用为规范、推动中文信息化进程起了很大作用。
- 3、GBK编码是中国大陆制订的、等同于UCS的新的中文编码扩展国家标准。GBK工作小组于1995年10月,同年12月完成GBK规范。该编码标准兼容GB2312,共收录汉字21003个、符号883个,并提供1894个造字码位,简、繁体字融于一库。

  • 7
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值