# Basic syntax:
first_list.append(second_list) # Append adds the second_list as an
# element to the first_list
first_list.extend(second_list) # Extend combines the elements of the
# first_list and the second_list
# Note, both append and extend modify the first_list in place
# Example usage for append:
first_list = [1, 2, 3, 4, 5]
second_list = [6, 7, 8, 9]
first_list.append(second_list)
print(first_list)
--> [1, 2, 3, 4, 5, [6, 7, 8, 9]]
# Example usage for extend:
first_list = [1, 2, 3, 4, 5]
second_list = [6, 7, 8, 9]
first_list.extend(second_list)
print(first_list)
--> [1, 2, 3, 4, 5, 6, 7, 8, 9]
a = [1, 2, 3]
b = [4, 5]
# method 1:
c = a + b # forms a new list with all elements
print(c) # [1, 2, 3, 4, 5]
# method 2:
a.extend(b) # adds the elements of b into list a
print(a) # [1, 2, 3, 4, 5]
list1 = ["Hello ", "take "]
list2 = ["Dear", "Sir"]
resList = [x+y for x in list1 for y in list2]
print(resList)
#['Hello Dear', 'Hello Sir', 'take Dear', 'take Sir']
#define lists
my_list = ["a", "b"]
other_list = [1, 2]
#extend my_list by adding all the values from other_list into my list
my_list.extend(other_list)
# output: ['a', 'b', 1, 2]
"""
Joining any number of iterables by combining elements in order
- Iterables include: str, list, tuples, dict etc...
- No error will be incurred if you zip lists of differing lengths,...
...it will simply zip up to the length of the shortest list
"""
lst1 = [1, 2, 3, 4, 5, 7]
lst2 = "mangos"
lst3 = (3.1, 5.4, 0.2, 23.2, 8.88, 898)
lst4 = {"Car": "Mercedes Benz", "Location": "Eiffel Tower", "Organism": "Tardigrade"}
# lst5, lst6, ...
result = list(zip(lst1, lst2, lst3, lst4.keys())) # Check out dictionary methods
print(result)
## [(1, 'm', 3.1, 'Car'), (2, 'a', 5.4, 'Location'), (3, 'n', 0.2, 'Organism')]