# ----------------------------
# -- Numpy => Create Arrays --
# ----------------------------
import numpy as np
# print(dir(np))
my_list = [1, 2, 3, 4, 5]
my_array = np.array(my_list)
print(my_list)
print(my_array)
print("#" * 50)
# Type
print(type(my_list))
print(type(my_array))
print("#" * 50)
# Accessing Elements
print(my_list[0])
print(my_array[0])
print("#" * 50)
a = np.array(10)
b = np.array([10, 20])
c = np.array( [ [1, 2], [3, 4] ] )
d = np.array( [ [ [5, 6], [7, 9] ], [ [1, 3], [4, 8] ] ] )
print(d[1][1][-1])
print(d[1, 1, 1])
print(d[1, 1, -1])
print("#" * 50)
# Number Of Dimensions
print(a.ndim)
print(b.ndim)
print(c.ndim)
print(d.ndim)
print("#" * 50)
# Custom Dimensions
my_custom_array = np.array([1, 2, 3], ndmin=3)
print(my_custom_array)
print(my_custom_array.ndim)
print(my_custom_array[0, 0, 0])