how to find determinant of matrix using python without numpy code example

Example 1: how to find determinant in numpy

import numpy as np
a = np.array([[1,2], [3,4]]) 
print np.linalg.det(a)

Example 2: python matrix determinant without numpy

def det(matrix):
    order=len(matrix)
    posdet=0
    for i in range(order):
        posdet+=reduce((lambda x, y: x * y), [matrix[(i+j)%order][j] for j in range(order)])
    negdet=0
    for i in range(order):
        negdet+=reduce((lambda x, y: x * y), [matrix[(order-i-j)%order][j] for j in range(order)])
    return posdet-negdet