Code Explanation:
1. Create NumPy Array
a = np.array([1, 2, 3])
Creates a NumPy array a with values [1, 2, 3].
Shape: (3,), dtype: int64
a now → [1, 2, 3]
2. Assign Reference (Not a Copy)
b = a
b is not a new array — it references the same memory as a.
So, any change in b will reflect in a and vice versa.
3. Modify Element via Reference
b[0] = 99
Changes the first element of b to 99.
Since a and b are the same object, a also becomes [99, 2, 3].
4. Create a Deep Copy
c = a.copy()
Creates an independent copy of a.
Now c = [99, 2, 3], but it does not share memory with a or b.
5. Modify the Copy
c[1] = 88
Changes the second element of c to 88.
c becomes [99, 88, 3].
a and b remain [99, 2, 3].
6. Sum All Arrays and Print Result
print(np.sum(a) + np.sum(b) + np.sum(c))
a = [99, 2, 3] → sum = 104
b = [99, 2, 3] → same as a → sum = 104
c = [99, 88, 3] → sum = 190
Total Sum: 104 + 104 + 190 = 398
Final Output: 398


0 Comments:
Post a Comment