pylint is generally a good indicator of bad style. Even when it gives a "false positive", it is probably due to doing things against convention. I am no expert, but I'd say a function that only has a side effect is not optimal. Some people (Robert Martin in Clean Code, for example), go as far as saying all side effects are lies.
I'd recommend (again, I am no expert):
def addSeven(foo):
return foo + [7]
example = [3, 4, 5, 6]
example = addSeven(example)
Arguments should be input-only, and output should be via return value. Output arguments are bad practice, as far as I know.