Cách lặp qua ma trận trong python

Bạn có một bảng đối xứng hoặc kích thước ma trận và bạn muốn làm gì đó [tôi. e. đánh giá hoặc chỉ cần in] dựa trên nội dung của ma trận. Vì ma trận đối xứng nên bạn không cần lặp lại trên toàn bộ ma trận. Bạn chỉ có thể lặp lại phần hình tam giác phía trên hoặc chỉ phần hình tam giác phía dưới và nhận được kết quả tương tự. Làm thế nào để làm điều đó trong chương trình?

Khi làm việc với thư viện NumPy, bạn sẽ gặp các tình huống cần lặp qua mảng 1D, 2D và thậm chí cả mảng 3D. Bài viết này sẽ hướng dẫn bạn cách thực hiện nhiệm vụ này

💬 câu hỏi. Làm cách nào chúng ta viết mã để lặp qua mảng NumPy 1D, 2D hoặc 3D?

Chúng ta có thể hoàn thành nhiệm vụ này bằng một trong các tùy chọn sau

  • Phương pháp 1. Sử dụng vòng lặp
    import numpy as np 
    6 và
    import numpy as np 
    7
  • Phương pháp 2. Sử dụng vòng lặp ______66
    atomic_els = np.array[np.arange[1,6]]
    
    for el in atomic_els:
        print[el, end=' ']
    1
  • Phương pháp 3. Sử dụng vòng lặp ______66
    atomic_els = np.array[np.arange[1,6]]
    
    for el in atomic_els:
        print[el, end=' ']
    3
  • Phương pháp 4. Sử dụng vòng lặp
    atomic_els = np.array[np.arange[1,6]]
    
    for el in atomic_els:
        print[el, end=' ']
    4 và
    atomic_els = np.array[np.arange[1,6]]
    
    for el in atomic_els:
        print[el, end=' ']
    5
  • Phương pháp 5. Sử dụng vòng lặp ______66
    atomic_els = np.array[np.arange[1,6]]
    
    for el in atomic_els:
        print[el, end=' ']
    7
  • Phương pháp 6. Sử dụng vòng lặp ______66
    atomic_els = np.array[np.arange[1,6]]
    
    for el in atomic_els:
        print[el, end=' ']
    9
  • Thưởng. CSV sang
    import numpy as np 
    7

Sự chuẩn bị

Trước khi tiếp tục, vui lòng đảm bảo thư viện NumPy đã được cài đặt. Bấm vào đây nếu bạn cần hướng dẫn

Sau đó, thêm đoạn mã sau vào đầu mỗi tập lệnh. Đoạn mã này sẽ cho phép mã trong bài viết này chạy không có lỗi

import numpy as np 

Sau khi nhập thư viện NumPy, thư viện này được tham chiếu bằng cách gọi mã ngắn [

atomic_data = np.array[[np.arange[1,6], [0, 2, 4, 5, 6]]]

for dim in atomic_data:
    for d in dim:
        print[d, end=' ']
1]

Phương pháp 1. Sử dụng Vòng lặp For và np. mảng[]

Phương pháp này sử dụng vòng lặp

import numpy as np 
6 kết hợp với
import numpy as np 
7 để lặp qua mảng 1D NumPy. Năm [5] Số nguyên tử đầu tiên từ Bảng tuần hoàn được tạo và hiển thị cho ví dụ này

atomic_els = np.array[np.arange[1,6]]

for el in atomic_els:
    print[el, end=' ']

Ở trên, gọi hàm

import numpy as np 
7 và chuyển nó sang hàm
atomic_data = np.array[[np.arange[1,6], [0, 2, 4, 5, 6]]]

for dim in atomic_data:
    for d in dim:
        print[d, end=' ']
5 với hai [2] đối số. vị trí bắt đầu là một [1] và vị trí dừng là năm [5] hoặc [dừng-1]. Kết quả là một mảng các số nguyên và lưu vào
atomic_data = np.array[[np.arange[1,6], [0, 2, 4, 5, 6]]]

for dim in atomic_data:
    for d in dim:
        print[d, end=' ']
6

atomic_data = np.array[[np.arange[1,6], [0, 2, 4, 5, 6]]]

for dim in atomic_data:
    for d in dim:
        print[d, end=' ']
7

Tiếp theo, một vòng lặp

import numpy as np 
6 được khởi tạo và lặp qua từng phần tử của mảng 1D NumPy
atomic_data = np.array[[np.arange[1,6], [0, 2, 4, 5, 6]]]

for dim in atomic_data:
    for d in dim:
        print[d, end=' ']
7

Đầu ra được gửi đến thiết bị đầu cuối trên một [1] dòng dưới dạng đối số bổ sung được chuyển đến câu lệnh in [

atomic_els = np.array[np.arange[1,6]]

for el in atomic_els:
    print[el, end=' ']
30]. Đối số này thay thế ký tự dòng mới mặc định bằng một khoảng trống

atomic_els = np.array[np.arange[1,6]]

for el in atomic_els:
    print[el, end=' ']
31

Hướng dẫn NumPy - Mọi thứ bạn cần biết để bắt đầu


Xem video này trên YouTube

Phương pháp 2. Sử dụng Vòng lặp For và nditer[]

Phương pháp này sử dụng vòng lặp

atomic_els = np.array[np.arange[1,6]]

for el in atomic_els:
    print[el, end=' ']
32 kết hợp với
atomic_data = np.array[[np.arange[1,6], [0, 2, 4, 5, 6]]]

for dim in atomic_data:
    for d in dim:
        print[d, end=' ']
8 để lặp qua một mảng NumPy. Dữ liệu năm [5] Số nguyên tử và Số neutron đầu tiên từ màn hình Bảng tuần hoàn cho ví dụ này

atomic_data = np.array[[np.arange[1,6], [0, 2, 4, 5, 6]]]

for dim in atomic_data:
    for d in dim:
        print[d, end=' ']

Ở trên, gọi hàm

import numpy as np 
7 và chuyển
atomic_els = np.array[np.arange[1,6]]

for el in atomic_els:
    print[el, end=' ']
0 làm đối số đầu tiên và một mảng các giá trị Số nơtron được liên kết làm đối số thứ hai

Tiếp theo, một vòng lặp

atomic_els = np.array[np.arange[1,6]]

for el in atomic_els:
    print[el, end=' ']
36 bên ngoài được khởi tạo. Điều này lặp lại qua từng kích thước mảng

Bên trong vòng lặp này, một vòng lặp

atomic_els = np.array[np.arange[1,6]]

for el in atomic_els:
    print[el, end=' ']
36 khác được khởi tạo. Vòng lặp bên trong lặp qua từng phần tử của các kích thước trên

Đầu ra được gửi đến thiết bị đầu cuối trên một [1] dòng dưới dạng đối số bổ sung được chuyển đến câu lệnh in [

atomic_els = np.array[np.arange[1,6]]

for el in atomic_els:
    print[el, end=' ']
30]. Đối số này thay thế ký tự dòng mới mặc định bằng một khoảng trống

atomic_els = np.array[np.arange[1,6]]

for el in atomic_els:
    print[el, end=' ']
39

💡Lưu ý. Thứ nguyên đầu tiên được đánh dấu để dễ dàng phân biệt các thứ nguyên

Phạm vi Python[] Hàm. Hướng dẫn minh họa hữu ích


Xem video này trên YouTube

Phương pháp 3. Sử dụng Vòng lặp For và itertools

Phương pháp này sử dụng vòng lặp

atomic_els = np.array[np.arange[1,6]]

for el in atomic_els:
    print[el, end=' ']
32 và thư viện
atomic_els = np.array[np.arange[1,6]]

for el in atomic_els:
    print[el, end=' ']
3 tích hợp sẵn của Python để lặp qua một mảng NumPy. Dữ liệu ba [3] Số nguyên tử, Pha và Nhóm đầu tiên từ màn hình Bảng tuần hoàn cho ví dụ này

atomic_els = np.array[np.arange[1,6]]

for el in atomic_els:
    print[el, end=' ']
3

Ở trên, nhập thư viện

atomic_els = np.array[np.arange[1,6]]

for el in atomic_els:
    print[el, end=' ']
3 để sử dụng hàm
atomic_els = np.array[np.arange[1,6]]

for el in atomic_els:
    print[el, end=' ']
73

Sau đó, ba [3] mảng được khai báo chứa dữ liệu liên quan của ba [3] phần tử đầu tiên trong Bảng tuần hoàn. Họ lưu tương ứng vào

atomic_els = np.array[np.arange[1,6]]

for el in atomic_els:
    print[el, end=' ']
74,
atomic_els = np.array[np.arange[1,6]]

for el in atomic_els:
    print[el, end=' ']
75 và
atomic_els = np.array[np.arange[1,6]]

for el in atomic_els:
    print[el, end=' ']
76

Tiếp theo, một vòng lặp

atomic_els = np.array[np.arange[1,6]]

for el in atomic_els:
    print[el, end=' ']
32 được khởi tạo và truyền ba [3] đối số bên trong dấu ngoặc đơn
atomic_els = np.array[np.arange[1,6]]

for el in atomic_els:
    print[el, end=' ']
78 tham chiếu đến các đối số bên trong hàm
atomic_els = np.array[np.arange[1,6]]

for el in atomic_els:
    print[el, end=' ']
79

Một đối số bổ sung [

atomic_els = np.array[np.arange[1,6]]

for el in atomic_els:
    print[el, end=' ']
40] cũng được thông qua. Điều này điền vào bất kỳ giá trị còn thiếu nào cho danh sách có độ dài không bằng nhau với giá trị đã nêu

Vòng lặp lặp lại cho đến khi đạt đến cuối mảng, xuất ra thiết bị đầu cuối cho mỗi lần lặp

atomic_els = np.array[np.arange[1,6]]

for el in atomic_els:
    print[el, end=' ']
41

Iterators, Iterables và Itertools


Xem video này trên YouTube

Phương pháp 4. Sử dụng Vòng lặp While và Kích thước

Phương pháp này sử dụng vòng lặp

atomic_els = np.array[np.arange[1,6]]

for el in atomic_els:
    print[el, end=' ']
42 kết hợp với
atomic_els = np.array[np.arange[1,6]]

for el in atomic_els:
    print[el, end=' ']
1 để lặp qua một mảng NumPy. Dữ liệu năm [5] Số nguyên tử, Số neutron và Pha đầu tiên từ màn hình Bảng tuần hoàn cho ví dụ này

atomic_els = np.array[np.arange[1,6]]

for el in atomic_els:
    print[el, end=' ']
7

Ở trên, gọi hàm

import numpy as np 
7 và chuyển một danh sách chứa năm [5] tên phần tử đầu tiên của Bảng tuần hoàn. Những kết quả này lưu vào
atomic_els = np.array[np.arange[1,6]]

for el in atomic_els:
    print[el, end=' ']
45

Sau đó, một biến,

atomic_els = np.array[np.arange[1,6]]

for el in atomic_els:
    print[el, end=' ']
46, được khai báo với giá trị bắt đầu bằng 0 [
atomic_els = np.array[np.arange[1,6]]

for el in atomic_els:
    print[el, end=' ']
47]. Đây sẽ là một biến đếm và cho phép vòng lặp
atomic_els = np.array[np.arange[1,6]]

for el in atomic_els:
    print[el, end=' ']
4 biết khi nào nên dừng lặp lại

Tiếp theo, một vòng lặp

atomic_els = np.array[np.arange[1,6]]

for el in atomic_els:
    print[el, end=' ']
42 được khởi tạo và lặp qua các phần tử của
atomic_els = np.array[np.arange[1,6]]

for el in atomic_els:
    print[el, end=' ']
45. Điều này sẽ tiếp tục trong khi giá trị của
atomic_els = np.array[np.arange[1,6]]

for el in atomic_els:
    print[el, end=' ']
46 vẫn nhỏ hơn giá trị của
atomic_els = np.array[np.arange[1,6]]

for el in atomic_els:
    print[el, end=' ']
62

Đầu ra được gửi đến thiết bị đầu cuối trên một [1] dòng dưới dạng đối số bổ sung được chuyển đến câu lệnh in [

atomic_els = np.array[np.arange[1,6]]

for el in atomic_els:
    print[el, end=' ']
30]. Đối số này thay thế ký tự dòng mới mặc định bằng một khoảng trống

atomic_els = np.array[np.arange[1,6]]

for el in atomic_els:
    print[el, end=' ']
64

Phương pháp 5. Sử dụng Vòng lặp For và np. ndenumerate[]

Phương thức này sử dụng vòng lặp

import numpy as np 
6
atomic_els = np.array[np.arange[1,6]]

for el in atomic_els:
    print[el, end=' ']
7 để lặp qua một mảng NumPy. Năm [5] tên nguyên tố đầu tiên từ bảng tuần hoàn hiển thị cho ví dụ này.

atomic_els = np.array[np.arange[1,6]]

for el in atomic_els:
    print[el, end=' ']
4

Ở trên, gọi hàm

import numpy as np 
7 và truyền cho nó một mảng chứa năm [5] tên phần tử đầu tiên từ Bảng tuần hoàn. Kết quả lưu vào
atomic_els = np.array[np.arange[1,6]]

for el in atomic_els:
    print[el, end=' ']
45

Tiếp theo, một vòng lặp

atomic_els = np.array[np.arange[1,6]]

for el in atomic_els:
    print[el, end=' ']
32 được khởi tạo tham chiếu đến
atomic_els = np.array[np.arange[1,6]]

for el in atomic_els:
    print[el, end=' ']
30 là chỉ số của mảng và
atomic_els = np.array[np.arange[1,6]]

for el in atomic_els:
    print[el, end=' ']
31, là giá trị của phần tử mảng

Đầu ra được gửi đến thiết bị đầu cuối. Sau đó,

atomic_els = np.array[np.arange[1,6]]

for el in atomic_els:
    print[el, end=' ']
30 hiển thị một
atomic_els = np.array[np.arange[1,6]]

for el in atomic_els:
    print[el, end=' ']
33 chứa giá trị chỉ mục của mảng và sau đó là giá trị của
atomic_els = np.array[np.arange[1,6]]

for el in atomic_els:
    print[el, end=' ']
31 cho mỗi lần lặp lại

atomic_els = np.array[np.arange[1,6]]

for el in atomic_els:
    print[el, end=' ']
35

Phương pháp 6. Sử dụng Vòng lặp For và phạm vi []

Phương pháp này sử dụng vòng lặp

atomic_els = np.array[np.arange[1,6]]

for el in atomic_els:
    print[el, end=' ']
5 và
atomic_els = np.array[np.arange[1,6]]

for el in atomic_els:
    print[el, end=' ']
9] để lặp qua mảng 3D NumPy

atomic_els = np.array[np.arange[1,6]]

for el in atomic_els:
    print[el, end=' ']
6

Ở trên khai báo một mảng 3D NumPy chứa các số liên tiếp từ 1-29. Chúng lưu vào

atomic_els = np.array[np.arange[1,6]]

for el in atomic_els:
    print[el, end=' ']
38

Tiếp theo, ba [3] vòng lặp

atomic_els = np.array[np.arange[1,6]]

for el in atomic_els:
    print[el, end=' ']
5 được khởi tạo để lặp qua và xuất nội dung của
atomic_els = np.array[np.arange[1,6]]

for el in atomic_els:
    print[el, end=' ']
38 đến thiết bị đầu cuối một [1] số trên mỗi dòng

Ví dụ, hàm range[] cho mỗi vòng lặp dựa trên kích thước của mảng 3D Numpy

  • Vòng lặp đầu tiên [
    import numpy as np 
    61] xác định tổng số lần kéo trong mảng

  • Vòng lặp tiếp theo [
    import numpy as np 
    62] xác định số cột trong mảng

  • Vòng lặp cuối cùng [
    import numpy as np 
    63] xác định các phần tử trong mỗi cột của mảng

Cuối cùng, đầu ra được gửi đến thiết bị đầu cuối [chỉ đoạn mã]

import numpy as np 
64

Thưởng. Chuyển đổi CSV sang np. mảng[]

Ví dụ này đọc trong một đoạn của Bảng tuần hoàn dưới dạng tệp CSV. Dữ liệu này được chuyển đổi thành một mảng NumPy và được xuất ra thiết bị đầu cuối

Tệp CSV bên dưới chứa các giá trị của Số nguyên tử, Khối lượng nguyên tử, Số neutron và Số electron cho bảy [7] nguyên tố đầu tiên trong Bảng tuần hoàn

Nội dung của

import numpy as np 
65

import numpy as np 
66

Để làm theo, hãy lưu tệp này dưới dạng

import numpy as np 
65 và di chuyển tệp vào thư mục làm việc hiện tại

Trước khi tiếp tục, vui lòng đảm bảo thư viện Pandas đã được cài đặt. Bấm vào đây nếu bạn cần hướng dẫn

atomic_els = np.array[np.arange[1,6]]

for el in atomic_els:
    print[el, end=' ']
3

Ở trên, nhập thư viện Pandas và thư viện CSV. Điều này là cần thiết để làm việc với DataFrames và đọc trong tệp CSV

Sau đó, một tên tệp được khai báo và lưu vào

import numpy as np 
68

Trên dòng được đánh dấu, hàm

import numpy as np 
7 được gọi và truyền các đối số sau

  • Hàm
    import numpy as np 
    70 được truyền dưới dạng đối số và đối số này truyền phương thức
    import numpy as np 
    71 để mở tệp CSV được chỉ định ở chế độ đọc [
    import numpy as np 
    72], bao gồm dấu phân cách
    import numpy as np 
    73 [
    import numpy as np 
    74]
  • Nội dung của tệp CSV chuyển đổi thành danh sách
  • Danh sách này chuyển thành một
    import numpy as np 
    7

Kết quả lưu vào

import numpy as np 
76 và xuất ra terminal

import numpy as np 
77

10 phút để gấu trúc trong 5 phút [Được rồi 8]


Xem video này trên YouTube

Tóm lược

Bảy [7] phương pháp lặp mảng NumPy này sẽ cung cấp cho bạn đủ thông tin để chọn phương pháp tốt nhất cho các yêu cầu viết mã của bạn

Làm cách nào để lặp qua các hàng của mảng NumPy?

Lặp lại mảng NumPy .
Lặp lại mảng một chiều rất đơn giản với việc sử dụng vòng lặp For. .
Tương tự như các ngôn ngữ lập trình như C# và Java, bạn cũng có thể sử dụng vòng lặp while để lặp lại các phần tử trong một mảng. .
Nếu bạn sử dụng cùng một cú pháp để lặp mảng hai chiều, bạn sẽ chỉ có thể lặp một hàng

Tôi có thể lặp qua mảng NumPy không?

Mảng lặp . Khi chúng ta xử lý các mảng nhiều chiều ở dạng numpy, chúng ta có thể thực hiện việc này bằng cách sử dụng vòng lặp for cơ bản của python . Nếu chúng ta lặp trên mảng 1-D, nó sẽ đi qua từng phần tử một.

Chủ Đề