Loading

Quipoin Menu

Learn • Practice • Grow

python / NumPy
interview

Q1. What is NumPy and why is it used?
NumPy is a fundamental library for numerical computing in Python. It provides ndarray, a fast, efficient multidimensional array object, and many vectorized operations. It's the foundation for many data science and machine learning libraries (pandas, scikit-learn).

Q2. What is the difference between a NumPy array and a Python list?
NumPy arrays are homogeneous (all elements same type) and store data in contiguous memory, making operations faster. They support vectorized operations (element-wise without loops). Lists can hold different types and are slower for numerical computations.

Q3. How do you create a NumPy array?
Use np.array() from a list, or functions like np.zeros(), np.ones(), np.arange(), np.linspace(), np.random.rand(). Example:
import numpy as np arr = np.array([1,2,3]) zeros = np.zeros((3,3)) range_arr = np.arange(0, 10, 2)

Q4. What are broadcasting and vectorization?
Broadcasting allows operations on arrays of different shapes without explicitly replicating data. Vectorization refers to applying operations to whole arrays element-wise without explicit loops. Both lead to concise, efficient code. Example:
arr = np.array([1,2,3]) arr + 5 # broadcasting scalar

Q5. How do you index and slice NumPy arrays?
Use similar syntax as lists, but with multidimensional indexing. Example:
arr = np.arange(12).reshape(3,4) print(arr[1,2]) # element at row1,col2 print(arr[:,1]) # all rows, second column print(arr[1:3, 1:3]) # slice
Boolean indexing is also supported.