Qt World Summit: Submit your Presentation

Assigning datatype to variable in python

  • Hi,

    I've created new signal , where i specify list and object datatype.

    dataChanged = QtCore.Signal(list, object)

    But list and object datatype don't convey properly that what will be in list and in the object.
    So it would be good if we could declare something like this,

    dataChanged = QtCore.Signal(lst_employees, obj_sender)

    so that, if anyone sees the code, would understand easily. But i don't know it's possible in Python or not.

    But i have done something like this, i don't know this is correct or not

    lst_employees = list
    obj_sender = object

    dataChanged = QtCore.Signal(lst_employees, obj_sender)

    Is this right and pythanic way to use ? Please guide me.


  • Python is a dynamically typed language and its containers and collections are not constrained to contain only one type of data therefore aliasing the list type with your own name doesn't really achieve anything and is certainly not Pythonic. You should provide a comment in your code above the signal definition to describe what you expect the signal arguments to contain if you feel it necessary:


    dataChanged(list employees, object sender) [signal]

    dataChanged=QtCore.Signal(list, object)

    Hope this helps ;o)

Log in to reply