I am new to numpy. This might seem a bit stupid to most people but I couldn't find the answer anywhere
x = np.zeros(1000000000000)
x.nbytes
>> 8000000000000
this is like 8000 GB of memory. Initially i thought nbytes is not the actual bytes of memory consumed, but its written clearly here that nbytes gives the total bytes.
How is this possible? Does numpy use something like a lazy load? I am sure something is wrong here as 8000 GB of memory is simply impossible in my machine which has 8 GB of RAM.
PS: in google colab this leaks memory