We use np.array() to turn regular Python lists into arrays that are easier to work with for math and data tasks.
np.array() from Python lists in NumPy
import numpy as np # Create a numpy array from a Python list array_name = np.array(python_list)
The input to np.array() is usually a Python list or a list of lists for multi-dimensional arrays.
The output is a numpy array, which supports fast math and many useful functions.
import numpy as np # Example 1: 1D array from a list numbers_list = [1, 2, 3, 4] numbers_array = np.array(numbers_list) print(numbers_array)
import numpy as np # Example 2: 2D array from a list of lists matrix_list = [[1, 2], [3, 4]] matrix_array = np.array(matrix_list) print(matrix_array)
import numpy as np # Example 3: Empty list empty_list = [] empty_array = np.array(empty_list) print(empty_array)
import numpy as np # Example 4: List with one element single_element_list = [42] single_element_array = np.array(single_element_list) print(single_element_array)
This program shows how to convert a Python list to a numpy array and prints both to compare.
import numpy as np # Create a Python list python_list = [10, 20, 30, 40] print("Original Python list:", python_list) # Convert the list to a numpy array numpy_array = np.array(python_list) print("Converted numpy array:", numpy_array) # Show the type to confirm print("Type of original list:", type(python_list)) print("Type of numpy array:", type(numpy_array))
Time complexity: Creating an array from a list takes O(n) time, where n is the number of elements.
Space complexity: The array uses space proportional to the number of elements, similar to the list.
A common mistake is to think numpy arrays behave exactly like lists; arrays support element-wise math, unlike lists.
Use np.array() when you want to do math or data operations efficiently on collections of numbers.
np.array() converts Python lists into numpy arrays for easier math and data work.
Arrays support fast, element-wise operations that lists do not.
Use this to prepare data for analysis or scientific computing.
Practice
np.array() do when given a Python list?Solution
Step 1: Understand the purpose of np.array()
np.array() is designed to convert Python lists into numpy arrays.Step 2: Recognize the benefit of numpy arrays
Numpy arrays allow fast, element-wise math operations that lists do not support.Final Answer:
It converts the list into a numpy array for easier math operations. -> Option AQuick Check:
np.array() converts lists to arrays [OK]
- Thinking np.array() sorts the list
- Confusing arrays with dictionaries
- Assuming it removes duplicates
[1, 2, 3]?Solution
Step 1: Recall correct function call syntax
np.array() requires parentheses and a list inside, like np.array([1, 2, 3]).Step 2: Identify syntax errors in other options
np.array{1, 2, 3} uses curly braces which is invalid; C passes multiple arguments instead of one list; D uses double brackets incorrectly.Final Answer:
np.array([1, 2, 3]) -> Option DQuick Check:
np.array() needs a list inside parentheses [OK]
- Using curly braces instead of parentheses
- Passing multiple arguments instead of a single list
- Using double brackets incorrectly
import numpy as np lst = [[1, 2], [3, 4]] arr = np.array(lst) print(arr.shape)
Solution
Step 1: Understand the input list shape
The list has 2 sublists, each with 2 elements, so shape is 2 rows and 2 columns.Step 2: Check numpy array shape property
np.array converts nested lists into 2D arrays with shape (2, 2).Final Answer:
(2, 2) -> Option CQuick Check:
Nested list shape = (2, 2) [OK]
- Thinking shape is (4,)
- Assuming shape is (1, 4)
- Expecting an error for nested lists
import numpy as np lst = [1, 2, 3] arr = np.array(lst, 5) print(arr)
Solution
Step 1: Check np.array() function signature
np.array() takes the data as the first argument; a second positional argument like 5 is invalid.Step 2: Identify the error caused by extra argument
Passing 5 as a second positional argument causes a TypeError.Final Answer:
np.array() does not take a second positional argument like 5. -> Option BQuick Check:
Extra positional arguments cause error [OK]
- Thinking list must be nested
- Forgetting print() needs parentheses (Python 3)
- Believing integers are not allowed in arrays
temps = [[20, 22, 19], [21, 23, 20], [19, 21, 18], [22, 24, 21], [20, 22, 19], [18, 20, 17], [21, 23, 20]]
How can you convert this into a numpy array and find the average temperature for each day?
Solution
Step 1: Convert list of lists to numpy array
Use np.array(temps) to create a 2D array where each row is a day.Step 2: Calculate average temperature per day
Use mean(axis=1) to compute average across columns (hours) for each row (day).Final Answer:
import numpy as np temps_arr = np.array(temps) daily_avg = temps_arr.mean(axis=1) print(daily_avg) -> Option AQuick Check:
mean(axis=1) averages rows (days) [OK]
- Using mean(axis=0) which averages columns (hours)
- Using sum() without axis for average
- Using max() instead of mean()
Ready to prove it?
Pass the test and this pattern moves unknown
