django1.6 shell下访问对象出错AttributeError,,开发环境是PYTHON3
django1.6 shell下访问对象出错AttributeError,,开发环境是PYTHON3
开发环境是PYTHON3.3+DJANGO1.6 启动django shell后,导入是可用的,但是访问任何对象都提示:
AttributeError: 'dict' object has no attribute '_'
我一开始还以为是我的工程下的模块有问题,后来随便输入1,也出现这个问题了。
>>> 1Traceback (most recent call last): File "<console>", line 1, in <module> File "/home2/myhome/.pythonrc.py", line 94, in my_displayhook __builtins__._ = valueAttributeError: 'dict' object has no attribute '_'
这个是django shell的启动有问题吗?python3本身是正常的。
Python 3 只有 builtins 模块,没有 __builtin__ 了。至于 __builtins__ 变量:
所以,不要用它。_ 变量应该由 shell 的实现来处理的,不要在 displayhook 里处理。Python 自身的 shell 是使用 builtins 命名空间的,但是 code 模块使用的是全局空间。
另外,你也没必要反复 import 和删掉 pprint。没意义的。
补充一下pythonrc.py抛出异常部分的代码:
import sys# Enable Color Promptssys.ps1 = '%s>>> %s' % (_c['Green'], _c['Normal'])sys.ps2 = '%s... %s' % (_c['Red'], _c['Normal'])# Enable Pretty Printing for stdoutdef my_displayhook(value): if value is not None: try: import __builtin__ __builtin__._ = value except ImportError: __builtins__._ = value import pprint pprint.pprint(value) del pprintsys.displayhook = my_displayhook
编橙之家文章,
相关内容
- Flask响应内容为图片时怎么体现,,比如请求 http://
- 想用Python去掉{通配符}正则表达式怎么写,python正则表
- Python音频格式转换问题m4a转amr,pythonm4a,如何实现m4a 转
- 请问Python web应用使用哪种目录结构来组织代码比较好,
- Python语言file和open区别是什么,python语言fileopen,Python里
- python解释器问题,错误提示:0x80070652怎么办?,python0x8
- 网站迁移问题,django静态html目录url如何访问,djangourl,处
- python字符串嵌套与变量之间的问题,python嵌套,有没有类
- Python如何捕获微信摄推送服务端事件思路,python服务端
- python运行环境哪种轻巧又实用,python运行环境,在本机开
评论关闭