Media de la diagonal de una matriz

Podrían por favor ayudarme a calcular el promedio de la matriz diagonal. El ejercicio es el siguiente: Construir un programa que cree una matriz de tamaño MxM, llenarla con números por teclado, validando que solo sean números positivos y calcular la media de la diagonal de la matriz.

if __name__ == '__main__':     A = int()      A= [[int() for x in range(3)] for y in range(3)]      i = int()      j = int()      promedio = int()      promedio = 0   for i in range(1,4):      for j in range(1,4):          print (" A[",i,",",j,"]:")           A[i-1][j-1] = int(input())          print (" elementos de la matriz")   for i in range(1,4):  for j in range(1,4):  print (A[i-1][j-1]," ",)      print( " ")   for i in range(1,4):      for j in range(1,4):          if i==j:              promedio = promedio+A[i-1][j-1]   print (" el promedio es ",promedio)