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

Liên kết một giá trị duy nhất với tất cả các mục danh sách trong Python

Chúng ta có thể có nhu cầu liên kết một giá trị nhất định với từng và mọi phần tử của danh sách. Ví dụ - có tên của ngày và chúng tôi muốn gắn từ ngày làm hậu tố trong chúng. Các tình huống như vậy có thể được xử lý theo những cách sau.

Với itertools.repeat

Chúng ta có thể sử dụng phương pháp lặp lại từ mô-đun itertools để cùng một giá trị được sử dụng lặp đi lặp lại khi được ghép nối với các giá trị từ danh sách đã cho bằng cách sử dụng hàm zip.

Ví dụ

from itertools import repeat

listA = ['Sun','Mon','Tues']
val = 'day'
print ("The Given list : ",listA)
print ("Value to be attached : ",val)
# With zip() and itertools.repeat()
res = list(zip(listA, repeat(val)))
print ("List with associated vlaues:\n" ,res)

Đầu ra

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

The Given list : ['Sun', 'Mon', 'Tues']
Value to be attached : day
List with associated vlaues:
[('Sun', 'day'), ('Mon', 'day'), ('Tues', 'day')]

Với lambda và bản đồ

Phương thức lambda tạo và lặp qua các phần tử danh sách và bắt đầu ghép nối chúng. Hàm bản đồ đảm bảo tất cả các phần tử tạo thành danh sách được bao phủ trong việc ghép nối các phần tử danh sách với giá trị đã cho.

Ví dụ

listA = ['Sun','Mon','Tues']
val = 'day'
print ("The Given list : ",listA)
print ("Value to be attached : ",val)
# With map and lambda
res = list(map(lambda i: (i, val), listA))
print ("List with associated vlaues:\n" ,res)

Đầu ra

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

The Given list : ['Sun', 'Mon', 'Tues']
Value to be attached : day
List with associated vlaues:
[('Sun', 'day'), ('Mon', 'day'), ('Tues', 'day')]