Ask Ubuntu is a question and answer site for Ubuntu users and developers. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I want to use Qt for developing Ubuntu desktop, phone and tablet applications but I don't want to learn a new programming language (C++, JavaScript). Is it possible to write Qt application in Python utilizing Qt-Creator as IDE?

share|improve this question
up vote 9 down vote accepted

Yes, Qt-Creator is a C++ IDE, with little support for other languages but since version 2.8.0 a quite basic python support has been added.

That said you can use Qt-Designer (the form building tool), Qt-Translator (the translate tool), etc... easily with python.

There are two Qt-Python bindings right now, the GPL/Commercial dual licensed PyQt, and the LGPL PySide. I have used PyQt for a long time and I'm a happy user, I also have tried PySide but it looks less mature to me. If your license requirements allow you I'd go for PyQt.

share|improve this answer
recently added,status:open,n,z – PersianGulf Aug 30 '13 at 2:01

Just desing your interface in Qt-Designer and convert it to python file executing pyuic4.


pyuic4 editorFrame.ui -o

then you can import it from your main class, in this case i'm using a QMainWindow:

import sys
from PyQt4 import QtGui
from editorFrame import Ui_MainWindow

class Editor(QtGui.QMainWindow):

    def __init__(self):
        super(Editor, self).__init__()

def main():
    app = QtGui.QApplication(sys.argv)
    ex = Editor()

if __name__ == '__main__':
share|improve this answer
Just in case someone need this info, to install pyuic4: sudo apt-get install pyqt4-dev-tools qt4-designer – Tshilidzi Mudau Jan 2 at 8:58

With the release of Qt Creator 2.8 things are changing. It now natively supports Python for code editing and there are few Python-based features.

From Qt Creator 2.8 release announcement:

An editor specific for Python was added, with highlighting and indentation, and a Python class wizard

share|improve this answer

You may want to follow this tutorial series though : Developing Cross Platform Application using Qt, PyQt and PySide : GUI Application Development - Part 5 of 5. It completely discuss Qt dev using C++, PyQt and PySide

share|improve this answer

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.