Это правильный способ создания матрицы в python - PullRequest
1 голос
/ 05 августа 2020

Я изучал, как создать матрицу в Python, используя numpy, и попросить пользователя ввести в нее значения.

Я наткнулся на видео, в котором использовался определенный код, после работы и понимания его , Я написал что-то похожее и получил тот же результат.

Я хотел знать, в чем разница между обоими кодами и какой из них лучше, мудрее и проще в использовании.

Здесь оба кода создает матрицу 3x3

Код из видео:

import numpy as np

r = 3
c = 3

a = np.zeros((r, c), dtype=np.int64)

for i in range(len(a)):
    for j in range(len(a[i])):
        num = int(input('Enter the entries: '))
        a[i][j] = num 
print(a)

Мой код:

import numpy as np

r = 3
c = 3

a = np.zeros((r,c),dtype=np.int64)

for i in range(r):
    for j in range(c):
        num = int(input('Enter the entries: '))
        a[i][j] = num
print(a)

1 Ответ

5 голосов
/ 05 августа 2020

Другой способ, такой же, но более простой для чтения:

import numpy as np

r = 3
c = 3

a = np.zeros((r,c),dtype=np.int64)
for idx in np.ndindex(r, c):
    num = int(input('Enter the entries: '))
    a[idx] = num
print(a)

Опять же, это в основном то же самое, что и ваш код, но с использованием np.ndindex, и он применим к ndarray. Поэтому, если вам по какой-то причине потребуется увеличить размер матрицы, это будет проще, чем добавление еще одного for l oop

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...