Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> Python

Lấy phần tử danh sách con đến N trong Python


Trong hướng dẫn này, ta viết chương trình trả về phần tử danh sách con đến danh sách con thứ n trong một list. Giả sử ta có list sau với 5 danh sách con.

[['Python', 'Java'], ['C', 'Pascal'], ['Javascript', 'PHP'], ['C#', 'C++'], ['React', 'Angular']] Bây giờ, ta lấy phần tử đầu từ ba danh sách con đầu tiên. Ta lấy phần tử bằng các cách khác nhau. Xem một số cách.

Vòng lặp

Cách chung và suy nghĩ đầu tiên của hầu hết lập trình viên là dùng vòng lặp. Xem mã dùng vòng lặp.

Ví dụ

# Khởi tạo list và N
random_list = [['Python', 'Java'], ['C', 'Pascal'], ['Javascript', 'PHP'], ['C#', 'C++'], ['React', 'Angular']]
N = 3
# List rỗng lưu phần tử cuối từ sublist
desired_elements = []
# Lặp qua list đến phần tử thứ 3
for i in range(N):
    # Lưu phần tử đầu từ sublist
    desired_elements.append(random_list[i][0])
# In phần tử
print(desired_elements)

Kết quả

Nếu chạy mã trên, bạn sẽ nhận được kết quả sau.

['Python', 'C', 'Javascript']

Ta dùng list comprehensions thay for loop. Xem cùng mã dùng list comprehension.

Ví dụ

# Khởi tạo list và N
random_list = [['Python', 'Java'], ['C', 'Pascal'], ['Javascript', 'PHP'], ['C#', 'C++'], ['React', 'Angular']]
N = 3
# Lấy phần tử đầu từ sublist
desired_elements = [sublist[0] for sublist in random_list[:N]]
# In phần tử
print(desired_elements)

Kết quả

Nếu chạy mã trên, bạn sẽ nhận được kết quả sau.

['Python', 'C', 'Javascript']

Dùng phương thức tích hợp sẵn

Python cung cấp nhiều mô-đun và phương thức tích hợp. Ta dùng chúng giải quyết bài toán. Dùng map, itemgetter, và islice để đạt kết quả mong đợi. Xem mã.

Ví dụ

# Import phương thức cần thiết
import operator  # cho itemgetter
import itertools  # cho islice
# Khởi tạo list và N
random_list = [['Python', 'Java'], ['C', 'Pascal'], ['Javascript', 'PHP'], ['C#', 'C++'], ['React', 'Angular']]
N = 3
# Lấy phần tử đầu từ sublist
desired_elements = list(map(operator.itemgetter(0), itertools.islice(random_list, N)))
# In phần tử
print(desired_elements)

Kết quả

Nếu chạy mã trên, bạn sẽ nhận được kết quả sau.

['Python', 'C', 'Javascript']

Kết luận

Bạn có thể lấy bất kỳ phần tử nào thay vì phần tử đầu. Ta lấy phần tử đầu để minh họa. Nếu có thắc mắc, hãy đề cập ở phần bình luận.