亲测解决UnicodeDecodeError: 'utf8' codec can't decode byte 0xcd in position 9: invalid continuation byte

解决办法:

如果是windows平台的话,在Python 2.7.15\Lib\site-packages目录下面新建一个文件名为sitecustomize.py
在里面写上

import sys
sys.setdefaultencoding('gbk')

就OK啦!


今天在做数据库作业的时候,要安装psycopg2

但是出现了如下问题

PS D:\下载\psycopg2-master\psycopg2-master> python setup.py build
running build
running build_py
running build_ext
building 'psycopg2._psycopg' extension
Traceback (most recent call last):
  File "setup.py", line 650, in <module>
    ext_modules=ext)
  File "D:\Python 2.7.15\lib\site-packages\setuptools\__init__.py", line 130, in setup
    return distutils.core.setup(**attrs)
  File "D:\Python 2.7.15\lib\distutils\core.py", line 151, in setup
    dist.run_commands()
  File "D:\Python 2.7.15\lib\distutils\dist.py", line 953, in run_commands
    self.run_command(cmd)
  File "D:\Python 2.7.15\lib\distutils\dist.py", line 972, in run_command
    cmd_obj.run()
  File "D:\Python 2.7.15\lib\distutils\command\build.py", line 127, in run
    self.run_command(cmd_name)
  File "D:\Python 2.7.15\lib\distutils\cmd.py", line 326, in run_command
    self.distribution.run_command(command)
  File "D:\Python 2.7.15\lib\distutils\dist.py", line 972, in run_command
    cmd_obj.run()
  File "D:\Python 2.7.15\lib\distutils\command\build_ext.py", line 340, in run
    self.build_extensions()
  File "D:\Python 2.7.15\lib\distutils\command\build_ext.py", line 449, in build_extensions
    self.build_extension(ext)
  File "setup.py", line 297, in build_extension
    build_ext.build_extension(self, extension)
  File "D:\Python 2.7.15\lib\distutils\command\build_ext.py", line 499, in build_extension
    depends=ext.depends)
  File "D:\Python 2.7.15\lib\distutils\msvc9compiler.py", line 473, in compile
    self.initialize()
  File "D:\Python 2.7.15\lib\distutils\msvc9compiler.py", line 383, in initialize
    vc_env = query_vcvarsall(VERSION, plat_spec)
  File "D:\Python 2.7.15\lib\site-packages\setuptools\msvc.py", line 148, in msvc9_query_vcvarsall
    return EnvironmentInfo(arch, ver).return_env()
  File "D:\Python 2.7.15\lib\site-packages\setuptools\msvc.py", line 1257, in return_env
    exists),
  File "D:\Python 2.7.15\lib\site-packages\setuptools\msvc.py", line 1280, in _build_paths
    return os.pathsep.join(unique_paths)
UnicodeDecodeError: 'utf8' codec can't decode byte 0xcd in position 9: invalid continuation byte

查了好多博客,各有各的说法,尤其是很多办法忽悠要把编码改成UTF-8,改了之后还是一样的出错,其实应该是改成gbk编码(windows平台),如果是linux可能是UTF-8

注:可以通过以下命令查看python默认编码

这里的reload很关键,有时候直接用sys用不了

import sys
reload(sys)
print sys.getdefaultencoding()
  • 3
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 10
    评论
评论 10
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值