2010-06-11 31 views
5

Tôi có một danh sách trong python ('A', 'B', 'C', 'D', 'E'), làm cách nào để nhận được mục nào dưới một mục cụ thể số chỉ mục?Sử dụng chỉ mục để lấy một mục, Python

Ví dụ: nói nó đã được đưa ra 0, nó sẽ quay trở lại A. Given 2, nó sẽ quay trở lại C. Với 4, nó sẽ quay trở lại E.

+0

Bạn đã thử 'myList [0] 'và' myList [1] '? Điều gì đã xảy ra tại sao bạn thử một cái gì đó? Hãy đăng mã bạn đã thử. –

Trả lời

15

Những gì bạn thấy, ('A','B','C','D','E'), là không phải là list, đó là một tuple (dấu ngoặc tròn thay vì dấu ngoặc vuông cho biết). Tuy nhiên, cho dù chỉ mục danh sách hoặc một bộ (để nhận một mục tại một chỉ mục), trong cả hai trường hợp, bạn nối thêm chỉ mục đó vào dấu ngoặc vuông.

Vì vậy:

thetuple = ('A','B','C','D','E') 
print thetuple[0] 

in A, và vân vân.

Tuples (khác với danh sách) là bất biến, vì vậy bạn không thể gán -thetuple[0] vv (như bạn có thể gán cho một chỉ mục của một danh sách). Tuy nhiên, bạn chắc chắn có thể chỉ cần truy cập ("nhận") mục bằng cách lập chỉ mục trong cả hai trường hợp.

2
values = ['A', 'B', 'C', 'D', 'E'] 
values[0] # returns 'A' 
values[2] # returns 'C' 
# etc. 
0

Bạn có thể sử dụng chức năng _ _getitem__(key).

>>> iterable = ('A', 'B', 'C', 'D', 'E') 
>>> key = 4 
>>> iterable.__getitem__(key) 
'E' 
-1
x=[2,3,4,5,6,7] 
print(x.pop(2) 

đầu ra là 4

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