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

Truy cập tất cả các phần tử tại danh sách chỉ mục Python nhất định

Chúng ta có thể truy cập các phần tử riêng lẻ của danh sách bằng cách sử dụng dấu ngoặc [] và số chỉ mục. Nhưng khi chúng ta cần truy cập một số chỉ số thì chúng ta không thể áp dụng phương pháp này. Chúng tôi cần các phương pháp dưới đây để giải quyết vấn đề này.

Sử dụng hai danh sách

Trong phương pháp này, cùng với danh sách ban đầu, chúng tôi lấy các chỉ số làm danh sách khác. Sau đó, chúng tôi sử dụng vòng lặp for để lặp qua các chỉ số và cung cấp các giá trị đó cho danh sách chính để truy xuất các giá trị.

Ví dụ

given_list = ["Mon","Tue","Wed","Thu","Fri"]
index_list = [1,3,4]

# printing the lists
print("Given list : " + str(given_list))
print("List of Indices : " + str(index_list))

# use list comprehension
res = [given_list[n] for n in index_list]

# Get the result
print("Result list : " + str(res))

Đầu ra

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

Given list : ['Mon', 'Tue', 'Wed', 'Thu', 'Fri']
List of Indices : [0, 1, 2, 3, 4]
Result list : ['Tue', 'Thu', 'Fri']

Sử dụng bản đồ và địa lý

Thay vì sử dụng vòng lặp for ở trên, chúng ta cũng có thể sử dụng bản đồ cũng như phương thức địa lý để có được kết quả tương tự.

Ví dụ

given_list = ["Mon","Tue","Wed","Thu","Fri"]
index_list = [1, 3,4]

# printing the lists
print("Given list : " + str(given_list))
print("List of Indices : " + str(index_list))

# use list comprehension
res = list(map(given_list.__getitem__,index_list))

# Get the result
print("Result list : " + str(res))

Đầu ra

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

Given list : ['Mon', 'Tue', 'Wed', 'Thu', 'Fri']
List of Indices : [1, 3, 4]
Result list : ['Tue', 'Thu', 'Fri']