I assume the code duplication here is to avoid the checks `G.connected()` and `len(G)==2` etc. Would it be worth it to put this in a function `_get_fielder_func(method)` which returns the appropriate `find_fielder` function. Might make it slightly less clear, but more concise.