Merge method: 1. Use the " " operator to merge, the syntax is "list1 list2"; 2. Use extend() to merge, the syntax is "list_1.extend(list2)"; 3. Use Asterisks to merge, the syntax is " [*list_1,*list2]"; 4. Merge via chain function, syntax "list(chain(list1,list2))"; 5. Merge via Reduce, syntax "reduce(add,(list1,list2))".
The operating environment of this tutorial: windows7 system, python3 version, DELL G3 computer
5 of the merged list in Python Method
#1. Add lists directly
The easiest way to merge lists in Python is to use operators directly, as shown in the following example :
leaders_1 = ['Elon Mask', 'Tim Cook'] leaders_2 = ['Yang Zhou', 'Bill Gates'] leaders_3 = ['Jeff Bezos', 'Warren Buffet'] full_leaders_list = leaders_1 + leaders_2 + leaders_3 print(full_leaders_list) # ['Elon Mask', 'Tim Cook', 'Yang Zhou', 'Bill Gates', 'Jeff Bezos', 'Warren Buffet']
In addition, the = operator also supports lists. But, here's where things get interesting. See the following example:
A = B = [1, 2, 3] A += [4] print(A, B) # [1, 2, 3, 4] [1, 2, 3, 4] A = A + [5] print(A, B) # [1, 2, 3, 4, 5] [1, 2, 3, 4]
The above code may be confusing, especially for Python beginners.
Why does A equal B the first time but not the second time?
Leave a class assignment here, I hope all students can find the reason after class~
2. Expand a list
Except = operator Additionally, a simple way to use list merging is to use the extend() method.
leaders_1 = ['Elon Mask', 'Tim Cook'] leaders_2 = ['Yang Zhou', 'Bill Gates'] leaders_1.extend(leaders_2) print(leaders_1) # ['Elon Mask', 'Tim Cook', 'Yang Zhou', 'Bill Gates']
By the way, another method called append () is also popular when dealing with lists in Python.
Let's see what happens if we change the method of the previous example:
leaders_1 = ['Elon Mask', 'Tim Cook'] leaders_2 = ['Yang Zhou', 'Bill Gates'] leaders_1.append(leaders_2) print(leaders_1) # ['Elon Mask', 'Tim Cook', ['Yang Zhou', 'Bill Gates']]
As shown above, append() adds a new item to the list, while extend() Join lists with other lists.
3. Merge Lists with Asterisks
One of the most wonderful tricks in Python is to use sterisks. With the help of asterisks we can unpack the lists and put them together. This is a dizzying (perhaps a little smug) way to implement merged lists in Python.
leaders_1 = ['Elon Mask', 'Tim Cook'] leaders_2 = ['Yang Zhou', 'Bill Gates'] leaders_3 = ['Jeff Bezos', 'Warren Buffet'] full_list = [*leaders_1, *leaders_2, *leaders_3] print(full_list) # ['Elon Mask', 'Tim Cook', 'Yang Zhou', 'Bill Gates', 'Jeff Bezos', 'Warren Buffet']
4. Merge lists through chain functions
The chain function in the Itertools module is a special way to merge iteration objects in Python. It groups a series of iterations and returns the combined iterations. Because lists are also iterative, we can also use the chain function to merge lists:
from itertools import chain leaders_1 = ['Elon Mask', 'Tim Cook'] leaders_2 = ['Yang Zhou', 'Bill Gates'] leaders_3 = ['Jeff Bezos', 'Warren Buffet'] full_list = list(chain(leaders_1,leaders_2,leaders_3)) print(full_list) # ['Elon Mask', 'Tim Cook', 'Yang Zhou', 'Bill Gates', 'Jeff Bezos', 'Warren Buffet']
5. Merge lists through the Reduce function
Python is a benefit for lazy people. To me, writing too many when there are too many lists to merge is boring and I don't want to do that. In this case, we can use a higher order function - reduce, which again comes to our rescue:
from operator import add from functools import reduce A = [99, 2] B = [0, 5, 1] C = [2077, 2021] D = [0] L = reduce(add, (A, B, C, D)) print(L) # [99, 2, 0, 5, 1, 2077, 2021, 0]
Summary
The operation of merging lists in Python is at least There are 5 ways. We don’t necessarily choose differently every time. However, when reading other people's programs, you inevitably encounter different coding styles. Therefore, it is worthwhile to check different methods for the same operation. At least, we can feel the flexibility and elegance of Python from them
[Related recommendations: Python3 video tutorial]
The above is the detailed content of How to merge two lists in python. For more information, please follow other related articles on the PHP Chinese website!