Lấy ký tự đầu tiên của một chuỗi python trần:
>>> mystring = "hello"
>>> print(mystring[0])
h
>>> print(mystring[:1])
h
>>> print(mystring[3])
l
>>> print(mystring[-1])
o
>>> print(mystring[2:3])
l
>>> print(mystring[2:4])
ll
Lấy ký tự đầu tiên từ một chuỗi ở vị trí đầu tiên của danh sách python:
>>> myarray = []
>>> myarray.append("blah")
>>> myarray[0][:1]
'b'
>>> myarray[0][-1]
'h'
>>> myarray[0][1:3]
'la'
Nhiều người gặp khó khăn ở đây vì họ đang trộn các toán tử của đối tượng danh sách Python và toán tử của đối tượng ndarray Numpy:
Các hoạt động Numpy rất khác so với các hoạt động trong danh sách python.
Hãy xem xét hai thế giới xung đột của Python là "cắt danh sách, lập chỉ mục, tập hợp con" và sau đó là "tạo mặt nạ, cắt, đặt con, lập chỉ mục, sau đó là lập chỉ mục ưa thích nâng cao của numpy".
Hai video này đã giải tỏa mọi thứ cho tôi:
"Mất vòng lặp của bạn, tính toán số nhanh với NumPy" của PyCon 2015:
https://youtu.be/EEUXKG97YRw?t=22m22s
"NumPy Beginner | SciPy 2016 Tutorial" của Alexandre Chabot LeClerc:
https://youtu.be/gtejJ3RCddE?t=1h24m54s