Hướng dẫn python list every nth element - danh sách python mọi phần tử thứ n

Sử dụng

yourlist = [0, ... ,10 ...]  
sub = yourlist[::10]  # same as yourlist[0:100:10]

>>> sub
[0, 10, 20, 30, 40, 50, 60, 70, 80, 90]
3

li = list(range(0, 1000, 10))

[0, 10, 20, 30, 40, 50, 60, 70, 80, 90 ... 990]

Hoặc, nếu bạn có danh sách sử dụng lát cắt: Từ thủ công:

yourlist = [0, ... ,10 ...]  
sub = yourlist[::10]  # same as yourlist[0:100:10]

>>> sub
[0, 10, 20, 30, 40, 50, 60, 70, 80, 90]
4

yourlist = [0, ... ,10 ...]  
sub = yourlist[::10]  # same as yourlist[0:100:10]

>>> sub
[0, 10, 20, 30, 40, 50, 60, 70, 80, 90]

Cập nhật lần cuối vào ngày 19 tháng 8 năm 2022 21:50:49 (UTC/GMT +8 giờ)

lst = [1, 2, 3, 4, 5, 6, 7]

every_3rd = lst[::3]

print(every_3rd)

#Output:
[1, 4, 7]

Danh sách Python: Bài tập - 51 với giải pháp

def keep_every_nth(lst, n):
    return lst[::n]

example = [1, 2, 3, 4, 5, 6, 7]

print(keep_every_nth(example,3))

#Output:
[1, 4, 7]

Khi làm việc với các bộ sưu tập dữ liệu, khả năng dễ dàng giữ hoặc loại bỏ các mục cụ thể khỏi bộ sưu tập có thể có giá trị.

Một hoạt động như vậy trong Python là phổ biến là giữ mọi yếu tố thứ n trong danh sách.

Để giữ mọi yếu tố thứ n của một danh sách trong Python, bạn có thể sử dụng cắt lát và vượt qua N cho kích thước bước.

Ví dụ: nếu bạn có một danh sách và bạn muốn mỗi yếu tố thứ 2, bắt đầu với yếu tố đầu tiên, bạn sẽ nhận được lát cắt được xác định bởi [:: 2] như được hiển thị bên dưới.

lst = [1, 2, 3, 4, 5, 6, 7]

every_2nd = lst[::2]

print(every_2nd)

#Output:
[1, 3, 5, 7]

Nếu bạn muốn tạo một chức năng sẽ giữ mọi phần tử thứ n trong danh sách được đưa ra danh sách và N, bạn có thể sử dụng các mục sau:

def keep_every_nth(lst, n):
    return lst[::n]

example = [1, 2, 3, 4, 5, 6, 7]

print(keep_every_nth(example,3))

#Output:
[1, 4, 7]

Nếu bạn muốn bắt đầu với một yếu tố khác, thì bạn có thể điều chỉnh điểm bắt đầu của lát cắt của bạn.

Loại bỏ mọi yếu tố thứ n khỏi danh sách trong Python

Nếu bạn muốn đi theo cách khác và xóa mọi yếu tố thứ n khỏi danh sách trong mã Python của bạn, bạn cũng có thể sử dụng cắt lát.

Trong trường hợp này, chúng tôi sẽ cần điều chỉnh lát cắt mà chúng tôi thực hiện và cũng sử dụng từ khóa Python del để xóa các phần tử khỏi danh sách.

Dưới đây là một hàm sẽ xóa mọi phần tử thứ n khỏi danh sách được đưa ra danh sách và N trong Python.

def remove_every_nth(lst, n):
    del lst[n-1::n]
    return lst

example = [1, 2, 3, 4, 5, 6, 7]

print(remove_every_nth(example,3))

#Output:
[1, 2, 4, 5, 7]

Hy vọng rằng bài viết này đã hữu ích cho bạn để học cách giữ mọi yếu tố thứ n trong một danh sách trong Python.

Cập nhật lần cuối vào ngày 19 tháng 8 năm 2022 21:50:49 (UTC/GMT +8 giờ)

Danh sách Python: Bài tập - 51 với giải pháp

Viết một chương trình Python để phân chia danh sách mọi yếu tố thứ n.

Giải pháp mẫu:-

Giải pháp mẫu:

Mã Python:

def every_nth(nums, nth):
  return nums[nth - 1::nth]
print(every_nth([1, 2, 3, 4, 5, 6, 7, 8, 9, 10], 1))
print(every_nth([1, 2, 3, 4, 5, 6, 7, 8, 9, 10], 2))
print(every_nth([1, 2, 3, 4, 5, 6, 7, 8, 9, 10], 5))
print(every_nth([1, 2, 3, 4, 5, 6, 7, 8, 9, 10], 6))

Đầu ra mẫu:

[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
[2, 4, 6, 8, 10]
[5, 10]
[6]

Flowchart:

Hướng dẫn python list every nth element - danh sách python mọi phần tử thứ n

Trực quan hóa thực thi mã Python:

Công cụ sau đây trực quan hóa những gì máy tính đang làm từng bước khi nó thực hiện chương trình đã nói:

Trình chỉnh sửa mã Python:

Có một cách khác để giải quyết giải pháp này? Đóng góp mã của bạn (và nhận xét) thông qua Disqus.

Trước đây: Viết chương trình Python để có được danh sách với n phần tử bị xóa khỏi bên trái, phải. Write a Python program to get a list with n elements removed from the left, right.
Next: Write a Python program to check if the elements of the first list are contained in the second one regardless of order.

Python: Lời khuyên trong ngày

Cấu trúc lớp dữ liệu:

>>> from dataclasses import dataclass

>>> @dataclass
>>> class DataClassCard:
>>>    rank: str
>>>    suit: str
    
>>> queen_of_hearts = DataClassCard('Q', 'Hearts')
>>> queen_of_hearts.rank
'Q'
>>> queen_of_hearts
DataClassCard(rank='Q', suit='Hearts')
>>> queen_of_hearts == DataClassCard('Q', 'Hearts')
True

Cập nhật lần cuối vào ngày 19 tháng 8 năm 2022 21:50:49 (UTC/GMT +8 giờ)

Danh sách Python: Bài tập - 51 với giải pháp

Viết một chương trình Python để phân chia danh sách mọi yếu tố thứ n.

Hướng dẫn python list every nth element - danh sách python mọi phần tử thứ n

Giải pháp mẫu:-:-

Mã Python:

yourlist = [0, ... ,10 ...]  
sub = yourlist[::10]  # same as yourlist[0:100:10]

>>> sub
[0, 10, 20, 30, 40, 50, 60, 70, 80, 90]
0

Đầu ra mẫu:

yourlist = [0, ... ,10 ...]  
sub = yourlist[::10]  # same as yourlist[0:100:10]

>>> sub
[0, 10, 20, 30, 40, 50, 60, 70, 80, 90]
1

Flowchart:

Hướng dẫn python list every nth element - danh sách python mọi phần tử thứ n

Trực quan hóa thực thi mã Python:

Công cụ sau đây trực quan hóa những gì máy tính đang làm từng bước khi nó thực hiện chương trình đã nói:

Trình chỉnh sửa mã Python:

Có một cách khác để giải quyết giải pháp này?Đóng góp mã của bạn (và nhận xét) thông qua Disqus.

Trước đây: Viết một chương trình Python để sắp xếp một danh sách các từ điển lồng nhau. Write a Python program to sort a list of nested dictionaries.
Next: Write a Python program to compute the difference between two lists.

Python: Lời khuyên trong ngày

Cấu trúc lớp dữ liệu:

>>> from dataclasses import dataclass

>>> @dataclass
>>> class DataClassCard:
>>>    rank: str
>>>    suit: str
    
>>> queen_of_hearts = DataClassCard('Q', 'Hearts')
>>> queen_of_hearts.rank
'Q'
>>> queen_of_hearts
DataClassCard(rank='Q', suit='Hearts')
>>> queen_of_hearts == DataClassCard('Q', 'Hearts')
True