2011-08-18 80 views

Trả lời

80

Bạn gần như đã làm đúng. Cách đơn giản nhất là

mylist[0][0] # get the first character from the first item in the list 

nhưng

mylist[0][:1] # get up to the first character in the first item in the list 

cũng sẽ làm việc.

Bạn muốn cuối sau ký tự đầu tiên (nhân vật không), không bắt đầu sau ký tự đầu tiên (nhân vật không), đó là những gì các mã trong câu hỏi của bạn có nghĩa.

3

Hãy thử mylist[0][0]. Điều này sẽ trả về ký tự đầu tiên.

9

Lập chỉ mục trong python bắt đầu từ 0. Bạn đã viết [1:] điều này sẽ không trả lại cho bạn một char đầu tiên trong mọi trường hợp - điều này sẽ trả lại cho bạn phần còn lại (trừ char đầu tiên) của chuỗi.

Nếu bạn có cấu trúc sau:

mylist = ['base', 'sample', 'test'] 

Và muốn có được nắm tay char cho một chuỗi đầu tiên (item):

myList[0][0] 
>>> b 

Nếu tất cả các ký tự đầu tiên:

[x[0] for x in myList] 
>>> ['b', 's', 't']  

Nếu bạn có văn bản:

text = 'base sample test' 
text.split()[0][0] 
>>> b 
7

Lấy ký tự đầu tiên của một chuỗi trăn trọc:

>>> 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 mọi người bị vấp ngã ở đây vì họ đang trộn lẫn các toán tử của các đối tượng danh sách Python và các toán tử của các đối tượng Numpy ndarray:

Các thao tác khó khăn rất khác so với các thao tác danh sách python.

Quấn đầu xung quanh hai thế giới xung đột về "sắp xếp, lập chỉ mục, subsetting" của Python và sau đó "tạo mặt nạ, cắt, lập chỉ mục, lập chỉ mục, sau đó lập chỉ mục ưa thích của numpy".

Hai video xóa mọi thứ đối với tôi:

"Mất Loops của bạn, Fast Computing bằng số với NumPy" bởi PyCon 2015: https://youtu.be/EEUXKG97YRw?t=22m22s

"NumPy Beginner | scipy 2016 Hướng dẫn" bởi Alexandre Chabot LeClerc : https://youtu.be/gtejJ3RCddE?t=1h24m54s

Các vấn đề liên quan