# Using ufuncs (universal function)(fast)
import numpy as np
# Create a ufunc from a Python function
def square(x):
return x * x
square_ufunc = np.frompyfunc(square, 1, 1)
arr = np.array([1, 2, 3, 4])
result = square_ufunc(arr)
print(result)
'''
run:
[ 1 4 9 16]
'''