append: Appends object at the end.
x = [1, 2, 3]
x.append([4, 5])
print(x)
gives you: [1, 2, 3, [4, 5]]
extend: Extends list by appending elements from the iterable.
x = [1, 2, 3]
x.extend([4, 5])
print(x)
gives you: [1, 2, 3, 4, 5]
append adds an element to a list, and extend concatenates the first list with another list (or another iterable, not necessarily a list.)
>>> li = [‘a’, ‘b’, ‘mpilgrim’, ‘z’, ‘example’]
>>> li
[‘a’, ‘b’, ‘mpilgrim’, ‘z’, ‘example’]
>>> li.append(“new”)
>>> li
[‘a’, ‘b’, ‘mpilgrim’, ‘z’, ‘example’, ‘new’]
>>> li.append([“new”, 2])
>>> li
[‘a’, ‘b’, ‘mpilgrim’, ‘z’, ‘example’, ‘new’, [‘new’, 2]]
>>> li.insert(2, “new”)
>>> li
[‘a’, ‘b’, ‘new’, ‘mpilgrim’, ‘z’, ‘example’, ‘new’, [‘new’, 2]]
>>> li.extend([“two”, “elements”])
>>> li
[‘a’, ‘b’, ‘new’, ‘mpilgrim’, ‘z’, ‘example’, ‘new’, [‘new’, 2], ‘two’, ‘elements’]