import re

string = 'I love sleeping. I love singing. I love dancing.'
words = ['Swimming', 'Eating', 'Jogging']

pattern = re.compile(r'(?<=I love )\w+(?=\.)')

print pattern.sub(lambda m: words.pop(0), string)
