Hướng dẫn python partition array - mảng phân vùng python

Python nổi tiếng với các lệnh giống như tiếng Anh, khả năng đọc mã và cú pháp lập trình đơn giản của nó. Nó cũng cung cấp cho người dùng một loạt các cấu trúc dữ liệu và danh sách là một trong số đó. Cấu trúc dữ liệu danh sách cho phép chúng tôi lưu trữ một lượng lớn dữ liệu tuần tự trong một biến duy nhất. Một lập trình viên giỏi phải biết cách xử lý và thao tác danh sách. Trong bài viết này, bạn sẽ học cách phân vùng danh sách thành các khối có kích thước nhất định. Nhưng trước khi chúng tôi làm điều đó, chúng ta hãy cho bạn một bản tóm tắt nhanh chóng về danh sách.

Nội phân chính

  • Danh sách là gì?
  • Chia một danh sách thành các khối có kích thước đã cho trong Python
  • 1) Sử dụng năng suất
  • 2) Sử dụng danh sách hiểu
  • 3) & nbsp; sử dụng mô -đun itertools
  • 4) Sử dụng mô -đun Toolz.IterToolz
  • 5) Sử dụng Numpy
  • Làm cách nào để phân vùng một mảng?
  • Làm thế nào để bạn tạo một phân vùng trong Python?
  • Làm thế nào để bạn chia một danh sách thành nhiều danh sách trong Python?
  • Làm thế nào để bạn chia một danh sách thành các phần N trong Python?

Danh sách là gì?

Chia một danh sách thành các khối có kích thước đã cho trong Python

1) Sử dụng năng suất

# create a list

List = ["favTutor", 60, 32.6]

# acessing elements of the list

print("Element at the first position: " +List[0])

print("Element at the third position: " +str(List[2]))

Output:

Element at the first position: favTutor

Element at the third position: 32.6

Chia một danh sách thành các khối có kích thước đã cho trong Python

1) Sử dụng năng suất

2) Sử dụng danh sách hiểu

3) & nbsp; sử dụng mô -đun itertools

1) Sử dụng năng suất

2) Sử dụng danh sách hiểuyield gives back a generator to the caller function rather than any object or data structure. To iterate on this concept, when a function is called and the thread of execution encounters a yield keyword in the function, the function is terminated at that line and the caller is given a generator object.

3) & nbsp; sử dụng mô -đun itertoolsyield successive chunks of the given size.

1) Sử dụng năng suất

# create a list
o_list = [10, 20, 30, 40, 50, 60, 70, 80, 90, 100]

# generator 
def partition(lst, size):
    for i in range(0, len(lst), size):
        yield lst[i : i+size]

# size of each chunk
n = 2

# partition the list
p_list = list(partition(o_list, n))

# display original list
print("Original List: ")
print(o_list)
# display the list results
print("Partitioned List:")
print(p_list)

Output:

[10, 20, 30, 40, 50, 60, 70, 80, 90, 100]
Partitioned List:
[[10, 20], [30, 40], [50, 60], [70, 80], [90, 100]]

2) Sử dụng danh sách hiểu

3) & nbsp; sử dụng mô -đun itertools

4) Sử dụng mô -đun Toolz.IterToolz

1) Sử dụng năng suất

# create a list
o_list = [10, 20, 30, 40, 50, 60, 70, 80, 90, 100]

# size of each chunk
n = 3

# partition the list using list comprehension
p_list = [o_list[i:i + n] for i in range(0, len(o_list), n)]

# display original list
print("Original List: ")
print(o_list)
# display the list results
print("Partitioned List:")
print(p_list)

Output:

Original List: 
[10, 20, 30, 40, 50, 60, 70, 80, 90, 100]
Partitioned List:
[[10, 20, 30], [40, 50, 60], [70, 80, 90], [100]]

 

3) & nbsp; sử dụng mô -đun itertools

4) Sử dụng mô -đun Toolz.IterToolz itertools is one of them. This module has a method called islice(), to create a slice of a list. Let us first look at the method syntax of this function to understand better:

itertools.islice(iterable, start, stop[, step])

5) Sử dụng Numpy

Theo cách tiếp cận này, chúng tôi tạo ra một phương thức máy phát điện mang lại một lát hoặc khối của danh sách ban đầu.yields a slice or chunk of the original list.

Ví dụ:

import itertools
# create a list
o_list = [10, 20, 30, 40, 50, 60, 70, 80, 90, 100]

# generator 
def partition(lst, size):
    for i in range(0, len(lst), size):
        yield list(itertools.islice(lst, i, i + size))

# size of each chunk
n = 3

# partition the list
p_list = list(partition(o_list, n))

# display original list
print("Original List: ")
print(o_list)
# display the list results
print("Partitioned List:")
print(p_list)

Output:

Original List: 
[10, 20, 30, 40, 50, 60, 70, 80, 90, 100]
Partitioned List:
[[10, 20, 30], [40, 50, 60], [70, 80, 90], [100]]

4) Sử dụng mô -đun Toolz.IterToolz

Nếu khái niệm sử dụng năng suất hoặc danh sách hiểu là gây nhầm lẫn cho bạn, thì đừng lo lắng. Bạn có thể sử dụng phương pháp đơn giản này để đạt được mục tiêu của bạn. Các công cụ.itertools Mô -đun của Python chứa phương thức phân vùng (). Trước tiên chúng ta hãy nhìn vào cú pháp phương thức của phương pháp này:tools.itertools module of python contains the partition() method. Let us first look at the method syntax of this method:

toolz.itertoolz.partition(n, seq, pad='__no__pad__')

Phương pháp này chỉ đơn giản lấy kích thước của các khối làm tham số đầu tiên và danh sách cần được chia thành tham số thứ hai của nó. Nhìn vào ví dụ dưới đây, để xem chính xác cách người ta có thể sử dụng phương pháp này để đạt được phân vùng của một danh sách thành các khối có kích thước bằng nhau.

Ví dụ:

Element at the first position: favTutor

Element at the third position: 32.6
0

Output:

Original List: 
[10, 20, 30, 40, 50, 60, 70, 80, 90, 100]
Partitioned List:
[[10, 20, 30], [40, 50, 60], [70, 80, 90], [100]]

4) Sử dụng mô -đun Toolz.IterToolz

Nếu khái niệm sử dụng năng suất hoặc danh sách hiểu là gây nhầm lẫn cho bạn, thì đừng lo lắng. Bạn có thể sử dụng phương pháp đơn giản này để đạt được mục tiêu của bạn. Các công cụ.itertools Mô -đun của Python chứa phương thức phân vùng (). Trước tiên chúng ta hãy nhìn vào cú pháp phương thức của phương pháp này:array_spit(), which does the very same task which we are trying to achieve. The method syntax of this function is as follows:

Element at the first position: favTutor

Element at the third position: 32.6
2

Phương pháp này chỉ đơn giản lấy kích thước của các khối làm tham số đầu tiên và danh sách cần được chia thành tham số thứ hai của nó. Nhìn vào ví dụ dưới đây, để xem chính xác cách người ta có thể sử dụng phương pháp này để đạt được phân vùng của một danh sách thành các khối có kích thước bằng nhau.

Ví dụ:

Element at the first position: favTutor

Element at the third position: 32.6
3

Output:

Element at the first position: favTutor

Element at the third position: 32.6
4

4) Sử dụng mô -đun Toolz.IterToolz

Nếu khái niệm sử dụng năng suất hoặc danh sách hiểu là gây nhầm lẫn cho bạn, thì đừng lo lắng. Bạn có thể sử dụng phương pháp đơn giản này để đạt được mục tiêu của bạn. Các công cụ.itertools Mô -đun của Python chứa phương thức phân vùng (). Trước tiên chúng ta hãy nhìn vào cú pháp phương thức của phương pháp này:

Phương pháp này chỉ đơn giản lấy kích thước của các khối làm tham số đầu tiên và danh sách cần được chia thành tham số thứ hai của nó. Nhìn vào ví dụ dưới đây, để xem chính xác cách người ta có thể sử dụng phương pháp này để đạt được phân vùng của một danh sách thành các khối có kích thước bằng nhau.

5) Sử dụng Numpy

Numpy là một thư viện trong Python rất nổi tiếng với các mảng xử lý duy nhất. Mô -đun này chứa một số phương pháp để thực hiện các hoạt động liên quan đến đại số tuyến tính, biến đổi Fourier và ma trận. Nó cũng bao gồm một phương thức gọi là Array_Spit (), thực hiện cùng một nhiệm vụ mà chúng tôi đang cố gắng đạt được. Cú pháp phương thức của hàm này như sau:

Phương pháp này lấy danh sách để được phân vùng là đối số đầu tiên và kích thước của các khối làm đối số thứ hai của nó. Đối số trục đi vào hình ảnh khi chúng tôi đang làm việc với DataFrames. Nhưng vì hôm nay chúng tôi chỉ làm việc với các danh sách đơn giản, bạn có thể bỏ qua đối số này ngay bây giờ. Bây giờ chúng ta hãy nhìn vào chức năng này trong hành động.

Sự kết luận

Danh sách này là một trong những khái niệm cơ bản nhất về Python và biết cách xung quanh họ là một kỹ năng mà mọi người phải sở hữu. Trong bài viết này, chúng tôi đã thấy năm cách khác nhau về cách chúng tôi có thể phân chia một danh sách thành các khối có kích thước nhất định. Chúng tôi yêu cầu bạn đi qua tất cả các phương pháp được thảo luận ở trên vì chúng có hiệu quả và hữu ích cao.

Làm cách nào để phân vùng một mảng?

Ba chiều phân vùng của một mảng xung quanh một phạm vi nhất định ..The partition() method searches for a specified string, and splits the string into a tuple containing three elements. The first element contains the part before the specified string. The second element contains the specified string. The third element contains the part after the string.

Sắp xếp lại một mảng ở dạng tối thiểu tối đa | Hiệp 1..

Sắp xếp lại một mảng sao cho 'mảng [j]' trở thành 'i' if 'arr [i]' là 'j' | Hiệp 1...

Sắp xếp lại một mảng ở dạng tối thiểu tối đa | Đặt 2 (O (1) không gian thêm).

Tìm số cặp (x, y) trong một mảng sao cho x^y> y^x ..

Làm thế nào để bạn tạo một phân vùng trong Python?

Phương thức phân vùng chuỗi python () Phương thức phân vùng () tìm kiếm cho một chuỗi được chỉ định và chia chuỗi thành một bộ chứa ba phần tử. Phần tử đầu tiên chứa phần trước chuỗi được chỉ định. Phần tử thứ hai chứa chuỗi được chỉ định. Phần tử thứ ba chứa phần sau chuỗi. to split a list into n parts. Call numpy. array_split(list, n) to return a list of n NumPy arrays each containing approximately the same number of elements from list . Use the for-loop syntax for array in list to iterate over each array in list .