I suggest you to read the docs about Basic Slicing and Indexing the numpy array.
Try this:
arr = a[:, :-1] #--> first two columns of array
Note 1:
The resulting array arr of the slicing operation is just a view inside the original array a, no copy is created. If you change any entity inside the arr, this change will also be propagated in the array a and vice-a-versa.
For Example,
Changing the value of arr[0, 0] will also change the corresponding value of a[0, 0].
Note 2: If you want to create a new array, while removing the last column so that changes in one array should not be propagated in other array, you can use numpy.delete which returns a new array with sub-arrays along an axis deleted.
arr = np.delete(a, -1, axis=1) # --> returns new array
Output of >>> arr:
[['A1' 'A2']
['B1' 'B2']
['C1' 'C2']]
"A3", "B3", "C3"right?