То, что я пытаюсь сделать, - это ввести пользовательский ввод столько строк, сколько пожелаете, и сделать его в массив. После этого я хочу найти, где наибольшее число находится в массиве, координату (x, y) типа числа вещей. Я создал исходный массив по-разному, но, например, у меня есть:Найти элемент в двумерном массиве Python
import numpy as np
m = []
rows = eval(input("How many rows in the list:"))
for row in range(rows):
m.append([])
value = eval(input("Enter a row:"))
m[row].append(value)
m = np.array(m)
print(m)
M = np.amax(m)
print(M)
index = np.where(M)
print(index)
Печать только так я могу видеть, что он делает. В финале я просто хочу, чтобы увидеть последнюю строку в этом примере:
Enter the number of rows in the list:3
Enter a row: 1,5,6
Enter a row: 2,6,7
Enter a row: 5,26,12
The location of the largest element is at (1, 2)
Дополнительная информация: Я не волнует, если он использует NumPy из нет. и я не буду против использования отдельных функций, когда я думаю об этом, это может быть хорошей идеей; один для создания массива и отдельный для определения наибольшего числа.
Заранее спасибо.
PS. Как отмечается в комментарии, eval обычно не следует использовать из-за рисков безопасности. Единственная причина, по которой я его использую, заключается в том, что это быстрое задание для школы.
Пожалуйста, не используйте 'eval' для преобразования произвольного пользовательского ввода. 'eval' и' exec' следует избегать, поскольку они могут представлять угрозу безопасности. Для получения дополнительной информации см. [Eval действительно опасно] (http://nedbatchelder.com/blog/201206/eval_really_is_dangerous.html) ветеран SO Нед Батчелдер. –