python2版本异常_python2 一些错误处理

python2各种问题

pip安装django出错:python2 -m pip install django

编码问题:Unicode Decode Error ascii codec can't decode byte...

原因:windows系统默认编码是gbk,而pip默认编码是utf8,故出错

解决方法: python27\Lib\site-packages下,新建一个 sitecustomize.py 文件,写入

import sys

sys.setdefaultencoding('gbk')

pip安装django出错:python2 -m pip install django

源码编译问题:IOError: [Errno 22] invalid mode ('wb') or filename

原因:pip默认下载最新版本,最新版本为django2.0,而源上只有django2.0 python3的whl文件,没有python2的whl文件。因此只能采用源码编译安装,而源码编译安装又出了这个错误

解决方法:指定下载较低版本的django,这里用django 1.11.4

pip指定版本号用“==”:

python2 -m pip install django==1.11.4

启动django出错:python2 manage.py runserver

RuntimeError: maximum recursion depth exceeded in cmp

django启动时出错,报错显示在python27/Lib/functool.py的第56行

解决办法:在python目录中的Lib下面找到functools将56行

convert = {

'__lt__': [('__gt__', lambda self, other: other < self),

('__le__', lambda self, other: not other < self),

('__ge__', lambda self, other: not self < other)],

'__le__': [('__ge__', lambda self, other: other <= self),

('__lt__', lambda self, other: not other <= self),

('__gt__', lambda self, other: not self <= other)],

'__gt__': [('__lt__', lambda self, other: other > self),

('__ge__', lambda self, other: not other > self),

('__le__', lambda self, other: not self > other)],

'__ge__': [('__le__', lambda self, other: other >= self),

('__gt__', lambda self, other: not other >= self),

('__lt__', lambda self, other: not self >= other)]

}

修改成:

convert = {

'__lt__': [('__gt__', lambda self, other: not (self < other or self == other)),

('__le__', lambda self, other: self < other or self == other),

('__ge__', lambda self, other: not self < other)],

'__le__': [('__ge__', lambda self, other: not self <= other or self == other),

('__lt__', lambda self, other: self <= other and not self == other),

('__gt__', lambda self, other: not self <= other)],

'__gt__': [('__lt__', lambda self, other: not (self > other or self == other)),

('__ge__', lambda self, other: self > other or self == other),

('__le__', lambda self, other: not self > other)],

'__ge__ ': [('__le__', lambda self, other: (not self >= other) or self == other),

('__gt__', lambda self, other: self >= other and not self == other),

('__lt__', lambda self, other: not self >= other)]

}

django连接postgresql出错:python2 manage.py runserver

django.db.utils.OperationalError:

FATAL: no pg_hba.conf entry for host "172.16.23.129", user "postgres", database "datamanager", SSL on

FATAL: no pg_hba.conf entry for host "172.16.23.129", user "postgres", database "datamanager", SSL off

PostgreSQ数据库为了安全,它不会监听除本地以外的所有连接请求,当用户通过JDBC访问是,会报一些如下的异常:

org.postgresql.util.PSQLException: FATAL: no pg_hba.conf entry for host

要解决这个问题,只需要在PostgreSQL数据库的安装目录下找到/data/pg_hba.conf,找到“# IPv4 local connections:”

在其下加上请求连接的机器IP

host all all 127.0.0.1/32 md5

32是子网掩码的网段;md5是密码验证方法,可以改(见文件pg_hba.conf上的说明)

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值