Getting all (forward) permutations of a list of strings
Here's an alternative approach using itertools.combinations to generate the (start, end) pairs:

from itertools import combinations
w = "Vehicula Sem Risus Tortor".split()
results = [' '.join(w[i:j]) for i, j in combinations(range(len(w) + 1), 2)]