Utwórz menu PyQt z listy ciągów

Mam listę ciągów i chcę utworzyć pozycję menu dla każdego z tych ciągów. Gdy użytkownik kliknie jeden z wpisów, zawsze ta sama funkcja zostanie wywołana z łańcuchem jako argumentem. Po kilku próbach i badaniach wpadłem na coś takiego:

import sys
from PyQt4 import QtGui, QtCore

class MainWindow(QtGui.QMainWindow):
    def __init__(self):
        QtGui.QMainWindow.__init__(self)
        self.menubar = self.menuBar()
        menuitems = ["Item 1","Item 2","Item 3"]
        menu = self.menubar.addMenu('&Stuff')
        for item in menuitems:
            entry = menu.addAction(item)
            self.connect(entry,QtCore.SIGNAL('triggered()'), lambda: self.doStuff(item))
            menu.addAction(entry)
        print "init done"

    def doStuff(self, item):
        print item

app = QtGui.QApplication(sys.argv)
main = MainWindow()
main.show()
sys.exit(app.exec_())

Teraz problem polega na tym, że każdy z elementów menu wydrukuje to samo wyjście: „Pozycja 3” zamiast odpowiadającego. Jestem wdzięczny za wszelkie pomysły na to, jak mogę to zrobić. Dzięki.

questionAnswers(2)

yourAnswerToTheQuestion