I am running IDLE on Windows XP. The version information when IDLE boots is: Python 3.0 (r30:67507, Dec 3 2008, 20:14:27) [MSC v.1500 32 bit (Intel)] on win32 I ran the following test case: >>> ' '.isprintable() False However, according to http://docs.python.org/3.0/library/stdtypes.htm#str.isprintable, "...the ASCII space (0x20) ... is considered printable." This seems pretty broken to me.
Python 3.0rc1+ (py3k, Nov 5 2008, 14:44:46) [GCC 3.4.6 20060404 (Red Hat 3.4.6-3)] on linux2 Type "help", "copyright", "credits" or "license" for more information. >>> ' '.isprintable() # probably no surprise: False >>> import sys >>> sys.getdefaultencoding() 'utf-8'
I'm sorry, looks like my fault. I attached a patch to fix issue. This patch contains re-generated unicodetype_db.h. I downloaded Unicode 5.1.0 and Unicode 3.2.0 files from unicode.org to re-generate.