1def obter_dimensao(m):
2 # Verifica se todas as linhas da matriz
3 # possuem o mesmo tamnho
4 if len({len(i) for i in m}) > 1:
5 raise TypeError('Matriz 2D invalida.')
6
7 # Calcula quantidade de linhas na matriz
8 linhas = len(m)
9
10 # Se nao houverem linhas na matriz
11 # assume zero colunas
12 colunas = len(m[0]) if linhas else 0
13
14 return (linhas, colunas)
15
16m1 = [] # 0x0
17m2 = [[],[],[]] # 3x0
18m3 = [[1],[2],[3]] # 3x1
19m4 = [[1,2,3],[1,2,3]] # 2x3
20m5 = [[1,2,3],[1,2,3,4]] # Matriz invalida!
21
22print(obter_dimensao(m1))
23print(obter_dimensao(m2))
24print(obter_dimensao(m3))
25print(obter_dimensao(m4))
26print(obter_dimensao(m5))
27