Jos*_*osh 3 python unicode python-idle
当使用IDLE提示执行以下行时,执行将在最后一行永远阻塞.
>>> class Foo(unicode):
pass
>>> foo = Foo('bar')
>>> print str(foo) # prints bar
>>> print repr(foo) # prints u'bar'
>>> print foo # blocks forever!!
Run Code Online (Sandbox Code Playgroud)
这很奇怪,因为它从python.exe控制台执行时按预期工作.这可能与这个问题有关,但我不确定.我在Windows 7 x64上使用32位32位python 2.7.5.谁能解释一下这里发生了什么?谢谢!
编辑:一些更多的测试......
如果我将该类保存Foo(unicode): pass在C:\ Python27\Lib\site-packages\mymodule.py中
现在IDLE不会阻塞以下代码:
>>> from mymodule import Foo
>>> print Foo('bar') # prints bar like expected.
Run Code Online (Sandbox Code Playgroud)