I have been using ctrl-click rather than python go to definition (which I have remapped from F3, because I already use F3 for find again).

(this is partly because I use eclipse for java a lot, and ctrl click does exactly go-to-definition's job in JDT)

interestingly often ctrl-click does exactly what I want. At times however, when there are multiple choices outside the current file (particularly with complex class hierarchies), or when there are certain complicated choices within the currentfile, then ctrl-click just jumps to one (not always the first...). this can be annoying, especially when you end up in some bit of the standard library rather than in the file you wanted.

on the other hand when you use go-to-definition it seems to often present a list of choices. This seems odd, because pydev (or at least pydev-extensions) 'knows' which one is right, because it is offering me code completion & analysis based on that one.

The ideal situation for me (and I would guess most users) would be the following:

ctrl-click does improved go-to-definition, where relevant definition is selected based on code completion/analysis - but where this is not possible ( e.g. because code analysis isn't possible or isn't completed at that moment), it shows a list of all fuzzy matches (or beeps or something else non-intrusive if it can't find any). This could be mapped to a key/menu as well as ctrl-click

there is another option go-to-definition-list (or list-possible-definitions) that always shows the list of fuzzy matches - this could be mapped to a key/menu.

There is no need for the current implementation of ctrl-click which just gives an approximation of the right answer, but doesn't acknowledge when it is straying into guesswork.