Actually you don’t need to split all words. You can split your text by last space symbol into two parts using rsplit.
Example:
>>> text="Python: Cut off the last word of a sentence?"
>>> text.rsplit(' ', 1)[0]
'Python: Cut off the last word of a'
rsplit
is a shorthand for “reverse split”, and unlike regular split
works from the end of a string. The second parameter is a maximum number of splits to make – e.g. value of 1
will give you two-element list as a result (since there was a single split made, which resulted in two pieces of the input string).