this is a simple python class to help with different ways of selecting vertices. tested in Blender 2.79.
it allows for growing/shrinking/selecting linked vertices - which could be useful if wanted to do these operations when for example painting weights in weight paint mode. (there may be bugs so please modify/use at your own risk)
import bpy class VertexSelector(object): """class to help with various ways of selecting vertices - tested in blender 2.79 ex: vs = VertexSelector() vs.linked() #or #vs.more() #or #vs.less() """ def __init__(self): pass def more(self): """grow selection """ curMode = self._getMode() if curMode != "EDIT": self._enterMode(mode="EDIT") #do task bpy.ops.mesh.select_more() #return to previous mode self._enterMode(mode=curMode) def less(self): """lessen selection """ curMode = self._getMode() if curMode != "EDIT": self._enterMode(mode="EDIT") #do task bpy.ops.mesh.select_less() #return to previous mode self._enterMode(mode=curMode) def linked(self): """select linked vertices """ curMode = self._getMode() if curMode != "EDIT": self._enterMode(mode="EDIT") #do task bpy.ops.mesh.select_linked(delimit=set()) #return to previous mode self._enterMode(mode=curMode) def _enterMode(self, mode="EDIT"): """enter given blender mode """ curMode = self._getMode() if curMode != mode: #handle weight paint if mode in ["PAINT_WEIGHT", "WEIGHT_PAINT"]: bpy.ops.object.mode_set(mode="WEIGHT_PAINT", toggle=False) return #handle all other cases bpy.ops.object.mode_set(mode=mode, toggle=False) def _getMode(self): return bpy.context.mode Happy Scripting! and Happy Sketching!