Matlab and Python are perfectly interchangeable for the overwhelming majority of undergrads and graduate students. Claiming that they are not interchangeable based on the difference between pass-by-reference and copy-on-write is just silly.
You're ignoring the typical use case for an engineering student: general math & plotting. In Python, that is easily accomplished with NumPy, SciPy, and Matplotlib. These are all free.
Kudos on knowing how these languages work and understanding some low-level design specifications, but negative kudos for not understanding the education system and the immense fiscal burden it places on students for books & software. Sure, many schools provide a free license... here is a little tidbit of information for you: ain't nothing free.