Python 3.2 Idle doesn't start. No error message.

Terry Reedy tjreedy at udel.edu
Tue May 24 17:53:53 EDT 2011


On 5/24/2011 4:12 PM, markrrivet at aol.com wrote:
> On Tue, 24 May 2011 12:50:47 -0400, Terry Reedy<tjreedy at udel.edu>
>> How do you try to start it?
>
>> From start|programs|python and clicking on the idle icon.

OK. Works fine for me on winxp desktop and win7 laptop.
3.2.1 will be out soon. Whether or not you find a fix before that, 
download it, install, and try again. I think I would uninstall 3.2.0 
first. You could, of course, try re-installing.

I just tried
C:\Documents and Settings\Terry>set PYTHONPATH
Environment variable PYTHONPATH not defined

so undefining that should not be the problem.

The icon properties are not helpful as to how it starts IDLE.
Perhaps is uses ../python32/Lib/idlelib/idle.bat

@echo off
rem Start IDLE using the appropriate Python interpreter
set CURRDIR=%~dp0
start "%CURRDIR%..\..\pythonw.exe" "%CURRDIR%idle.pyw" %1 %2 %3 %4 %5 %6 
%7 %8 %9

In a command prompt window you could directly try something like
C:\Programs\Python32>pythonw Lib\idlelib\idle.pyw
which works for me. Make sure idlelib and idle.pyw are present.
Also check tcl/ and Lib/tkinter/

idle.pyw has
=======================
try:
     import idlelib.PyShell
except ImportError:
     # IDLE is not installed, but maybe PyShell is on sys.path:
     try:
         from . import PyShell
     except ImportError:
         raise
     else:
         import os
         idledir = os.path.dirname(os.path.abspath(PyShell.__file__))
         if idledir != os.getcwd():
             # We're not in the IDLE directory, help the subprocess find 
run.py
             pypath = os.environ.get('PYTHONPATH', '')
             if pypath:
                 os.environ['PYTHONPATH'] = pypath + ':' + idledir
             else:
                 os.environ['PYTHONPATH'] = idledir
         PyShell.main()
else:
     idlelib.PyShell.main()
==========================

PYTHONPATH does come into play if but only if two imports fail.
You could make a copy of that and add prints to see what does and does 
not execute.

-- 
Terry Jan Reedy




More information about the Python-list mailing list