The term "Python shell" has a certain amount of ambiguity: for some people it may merely refer to an interactive Python environment with special capabilities (autocompletion, visualisation, and so on); for others it may refer to a replacement command environment for traditional UNIX shells (sh, csh, bash, etc.) where emphasis is placed on interaction with files and programs.
Enhanced Python Environments
Traditional Shell Replacements
See the UsePythonAsAnInteractiveShell page for a discussion on using Python command environments as UNIX shell replacements.
Editorial note: the following projects are currently missing Web links...
CherryShell (a Python shell in a Web browser; currently version 0.1 but still useful for remote operations; designed to replace PyroShell, feature code completion and code tips; works right now only with Firefox)