Computer >> Máy Tính >  >> Lập trình >> Python

Thêm hai phần tử danh sách Python

Danh sách có thể được thêm vào trong python, dẫn đến việc tạo một danh sách mới chứa các phần tử từ cả hai danh sách. Có nhiều cách tiếp cận khác nhau để thêm hai danh sách và chúng được mô tả bên dưới. Nhưng trong tất cả các trường hợp này, danh sách phải có cùng độ dài.

Sử dụng Append ()

Sử dụng append (), chúng ta có thể thêm các phần tử của danh sách này vào danh sách khác.

Ví dụ

List1 = [7, 5.7, 21, 18, 8/3]
List2 = [9, 15, 6.2, 1/3,11]
# printing original lists
print ("list1 : " + str(List1))
print ("list2 : " + str(List2))
newList = []
for n in range(0, len(List1)):
   newList.append(List1[n] + List2[n])
print(newList)

Chạy đoạn mã trên cho chúng ta kết quả sau:

list1 : [7, 5.7, 21, 18, 2.6666666666666665]
list2 : [9, 15, 6.2, 0.3333333333333333, 11]
[16, 20.7, 27.2, 18.333333333333332, 13.666666666666666]

Sử dụng Map () và Add ()

Chúng ta có thể kiện map () cùng với add () để thêm các phần tử của danh sách. Hàm bản đồ sử dụng tham số đầu tiên mà hàm thêm và thêm các phần tử của hai danh sách có cùng chỉ mục.

Ví dụ

from operator import add
#Adding two elements in the list.
List1 = [7, 5.7, 21, 18, 8/3]
List2 = [9, 15, 6.2, 1/3,11]
# printing original lists
print ("list1 : " + str(List1))
print ("list2 : " + str(List2))
NewList = list(map(add,List1,List2))
print(NewList)

Chạy đoạn mã trên cho chúng ta kết quả sau:

list1 : [7, 5.7, 21, 18, 2.6666666666666665]
list2 : [9, 15, 6.2, 0.3333333333333333, 11]
[16, 20.7, 27.2, 18.333333333333332, 13.666666666666666]

Sử dụng ZIp () và Sum ()

Trong một cách tiếp cận tương tự như trên, chúng ta có thể lấy zip () và sum () bằng cách sử dụng vòng lặp for. Thông qua vòng lặp for, chúng tôi liên kết hai phần tử của danh sách ở cùng một chỉ mục và sau đó áp dụng sum () cho mỗi phần tử trong số chúng.

Ví dụ

#Adding two elements in the list.
List1 = [7, 5.7, 21, 18, 8/3]
List2 = [9, 15, 6.2, 1/3,11]
result = [sum(n) for n in zip(List1, List2)]
print(result)

Chạy đoạn mã trên cho chúng ta kết quả sau:

[16, 20.7, 27.2, 18.333333333333332, 13.666666666666666]