python错误:AttributeError: 'module' object has no attribute 'setdefaultencoding'问题的解决方法_python

Python的字符集处理实在蛋疼,目前使用UTF-8居多,然后默认使用的字符集是ascii,所以我们需要改成utf-8
查看目前系统字符集

复制代码 代码如下:

import sys
print sys.getdefaultencoding()

执行:

复制代码 代码如下:

[root@lee ~]# python a.py
ascii

修改成utf-8

复制代码 代码如下:

import sys
 
sys.setdefaultencoding('utf-8')
 
print sys.getdefaultencoding()

执行:

复制代码 代码如下:

[root@lee ~]# python a.py
Traceback (most recent call last):
  File "a.py", line 4, in <module>
    sys.setdefaultencoding('utf-8')
AttributeError: 'module' object has no attribute 'setdefaultencoding'
提示:AttributeError: 'module' object has no attribute 'setdefaultencoding'?

后来经过查找相关资料,才发现早期版本可以直接sys.setdefaultencoding('utf-8'),新版本需要先reload一下

复制代码 代码如下:

import sys
 
reload(sys)
sys.setdefaultencoding('utf-8')
 
print sys.getdefaultencoding()

执行

复制代码 代码如下:

[root@lee ~]# python a.py
utf-8

 

时间: 2024-08-01 18:46:14

python错误:AttributeError: 'module' object has no attribute 'setdefaultencoding'问题的解决方法_python的相关文章

Python提示AttributeError: &#039;module&#039; object has no attribute &#039;XXX&#039;的问题

问题描述 在运行py脚本时报错AttributeError: 'module' object has no attribute 'urlopen'. 排错,模块名拼写正确,方法urlopen也存在. 代码断点运行,没问题. 方谷歌之. 解决方法 1.在命名py脚本时,不要和python的预留字等类似或者相同. 2.每次py脚本运行时均会产生一个pyc文件.如果产生了则在代码不更新的时候依旧会走pyc.所以也一并要删除. 如下Python代码,执行时报错"AttributeError: 'modu

提示AttributeError: &amp;#39;module&amp;#39; object has no attribute &amp;#39;HTTPSHandler&amp;#39;解决方法

今天在新机器上安装sqlmap,运行提示AttributeError: 'module' object has no attribute 'HTTPSHandler' 网上找了找资料,发现一篇文章http://paltman.com/2007/11/15/getting-ssl-support-in-python-251/ 输入如下命令: 1 2 3 4 5 6 wget http://www.openssl.org/source/openssl-0.9.8g.tar.gz tar zxf op

Python实现动态添加类的属性或成员函数的解决方法_python

某些时候我们需要让类动态的添加属性或方法,比如我们在做插件时就可以采用这种方法.用一个配置文件指定需要加载的模块,可以根据业务扩展任意加入需要的模块. 本文就此简述了Python实现动态添加类的属性或成员函数的解决方法,具体方法如下: 首先我们可以参考ulipad的实现:mixin. 这里做的比较简单,只是声明一个类,类初始化的时候读取配置文件,根据配置列表加载特定目录下的模块下的函数,函数和模块同名,将此函数动态加载为类的成员函数. 代码如下所示: class WinBAS(Bas): def

Python遍历zip文件输出名称时出现乱码问题的解决方法_python

本文实例讲述了Python遍历zip文件输出名称时出现乱码问题的解决方法.分享给大家供大家参考.具体如下: windows中使用python2.7遍历zip文件之后输出文件名等信息,console打印的中文及一些标点出现乱码.查了一下网上说的windows的编码为cp936,print()函数交给系统处理打印,所以要提前编码成windows能够识别的编码. 这种print的乱码也会出现在形如print(mylist)中(mylist是python的list类型变量,print(mylist[2]

在python的WEB框架Flask中使用多个配置文件的解决方法_python

有些框架本身就支持多配置文件,例如Ruby On Rails,nodejs下的expressjs.python下的Flask虽然本身支持配置文件管理, 但单纯使用from_object和from_envvar却不是那么方便.有没有更好的办法? 答案是Flask-Environments这个包.它能通过FLASK_ENV环境变量自动选择开发环境配置或生产环境配置.使用之前要先安装: 复制代码 代码如下: $ sudo pip install Flask-Environments 然后修改confi

Python3下机器学习实战KNN代码出现AttributeError: ‘dict’ object has no attribute错误

出现错误的代码时: result = sorted(classCount.iteritems(), key=operator.itemgetter(1), reverse=True) 错误显示: AttributeError: 'dict' object has no attribute 'iteritems' 之所以会出现上述错误是因为python3中已经没有这个属性,直接改为items即可: result = sorted(classCount.items(), key=operator.i

Python提示[Errno 32]Broken pipe导致线程crash错误解决方法_python

本文实例讲述了Python提示[Errno 32]Broken pipe导致线程crash错误解决方法.分享给大家供大家参考.具体方法如下: 1. 错误现象ThreadingHTTPServer 实现的 http 服务,如果客户端在服务器返回前,主动断开连接,则服务器端会报 [Errno 32] Broken pipe 错,并导致处理线程 crash. 下面先看个例子,python 版本: 2.7 示例代码 复制代码 代码如下: #!/usr/bin/env python #!coding=ut

Python中由于logging模块误用导致的内存泄露的解决方法

  Python中由于logging模块误用导致的内存泄露的解决方法         这篇文章主要介绍了解决Python中由于logging模块误用导致的内存泄露,针对由于过多的UDP连接所产生的问题,需要的朋友可以参考下 首先介绍下怎么发现的吧, 线上的项目日志是通过 logging 模块打到 syslog 里, 跑了一段时间后发现 syslog 的 UDP 连接超过了 8W, 没错是 8 W. 主要是 logging 模块用的不对 我们之前有这么一个需求, 就是针对每一个连接日志输出当前连接

PE还原Win7系统提示错误还原无法继续Error Number:(19010) 的原因及解决方法

原因分析及解决方法: 1.还原空间不够,有的系统占空间比较大,比如,一般win7安装的要求在20G以上,检查下C盘空间是否足够,如果空间不够也会出现这种提示. 2.检查镜像文件是否损坏,可以用MD5校验工具对比下载页面标示的MD5码是否一致,如不一致,可能是下载过程中出现数据错误,重新下载镜像再次安装试试.   3.硬盘分区表可能出错错误,检查一下硬盘上的分区表,同时查看下分区类型是否是MBR类型,GPT分区是不能安装GHOST镜像系统的.   4.硬盘可能存在坏道,可用DG工具检测并修复硬盘坏