[PySide] IPython Mac 10.7 QApplication instance already exists
blair at orcaware.com
Wed May 23 23:26:12 CEST 2012
According to PEP-8, don't compare using == to singletons:
"""Comparisons to singletons like None should always be done with is or
is not, never the equality operators."""
app = QApplication.instance()
if app is None:
app = QApplication(sys.argv)
On 05/23/2012 02:19 PM, Jason Augustyn wrote:
> Thanks, Nathan, after poking around a bit more I found a similar solution:
> app = QApplication.instance()
> if app == None:
> app = QApplication(sys.argv)
> This works!
> On Wed, May 23, 2012 at 5:03 PM, Nathan Smith <nathanjsmith at gmail.com
> <mailto:nathanjsmith at gmail.com>> wrote:
> Hi Jason,
> PySide only supports creating a single persistent instance of
> QApplication. This singleton exists forever and cannot be deleted.
> If you have a function that tries to create a QApplication, then I
> recommend placing that creation inside of a try/except block:
> app = QtGui.QApplication(sys.argv)
> except RuntimeError:
> app = QtCore.QCoreApplication.instance()
> This will either create a new QApplication instance if one does not
> exist, or return the current QApplication instance if one already
> does exist.
> On Wed, May 23, 2012 at 3:21 PM, Jason Augustyn
> <js.augustyn at gmail.com <mailto:js.augustyn at gmail.com>> wrote:
> Hi all, I am new to using PySide and have been working through
> the novice tutorials, which are great. One problem - I cannot
> re-run a script without exiting the Python shell altogether.
> Re-running gives the RuntimeError: A QApplication instance
> already exists.
> I have searched for a solution and found an old bug tracker
> ticket from someone with a similar problem. The suggested
> solution was to upgrade to PySide 1.0.4 and the ticket was
> marked as invalid. Obviously that doesn;t work, as I'm running
> the newest version of PySide and still have the problem. Any
> suggestions? I am using IPython on a Mac OSX 10.7.
> PySide mailing list
> PySide at qt-project.org <mailto:PySide at qt-project.org>
> PySide mailing list
> PySide at qt-project.org
More information about the PySide