Код ничего не выводит. В чём проблема?
Подскажите пожалуйста в чём проблема. Код ничего не выводит, хотя должен выводить: "Строка N, Столбец N".
Основная функции программы выглядит так:
def Function_main(m,n):
for row, arr in enumerate(m):
for col, value in enumerate(arr):
if value == n:
print(f'Строка {row+1}, столбец {col+1}')
Function_main([[1,2,3,4], [5,6,7,8], [9,10,11,12]],3)
Программа выводит:
Строка 1, столбец 3
Всё верно.
Но я решил добавить ввод матрицы, при условии, что матрица может хранить в себе элементы любого типа, и числа с клавиатуры, и после этого код перестал выводить ответ:
def Function_m():
x=input('Введите мартицу "Построчно, через запятую: "')
return x
def Function_n():
while True:
try:
y=int(input('Введите номер элемента: '))
if y<1:
raise ValueError
else:
break
except ValueError:
print('Ошибка в вводе')
return y
def Function_main(m,n):
for row, arr in enumerate(m):
for col, value in enumerate(arr):
if value == n:
print(f'Строка {row+1}, столбец {col+1}')
m= Function_m()
n= Function_n()
Function_main(m,n)
Что я сделал не так?
Ответы (1 шт):
Автор решения: Lamer
→ Ссылка
Попробуйте вот так
def Function_n():
y = input('Введите номер элемента: ')
if y.isdigit() == False or int(y) < 1:
print('Ошибка в вводе')
else:
return y