Chỉ số Python

Cấu trúc dữ liệu cơ bản nhất trong Python là dãy. Mỗi phần tử của một chuỗi được gán một số - vị trí hoặc chỉ số của nó. Chỉ số đầu tiên bằng 0, chỉ số thứ hai là một, v.v.

Python có sáu loại trình tự tích hợp sẵn, nhưng những loại phổ biến nhất là danh sách và bộ dữ liệu, mà chúng ta sẽ thấy trong hướng dẫn này

Có một số điều bạn có thể làm với tất cả các loại trình tự. Các hoạt động này bao gồm lập chỉ mục, cắt, thêm, nhân và kiểm tra tư cách thành viên. Ngoài ra, Python có các hàm tích hợp để tìm độ dài của một chuỗi và tìm các phần tử lớn nhất và nhỏ nhất của nó

Danh sách Python

Danh sách này là kiểu dữ liệu linh hoạt nhất có sẵn trong Python, có thể được viết dưới dạng danh sách các giá trị [mục] được phân tách bằng dấu phẩy giữa các dấu ngoặc vuông. Điều quan trọng về danh sách là các mục trong danh sách không nhất thiết phải cùng loại

Tạo danh sách đơn giản như đặt các giá trị được phân tách bằng dấu phẩy khác nhau giữa các dấu ngoặc vuông. Ví dụ -

list1 = ['physics', 'chemistry', 1997, 2000];
list2 = [1, 2, 3, 4, 5 ];
list3 = ["a", "b", "c", "d"]

Tương tự như chỉ mục chuỗi, chỉ mục danh sách bắt đầu từ 0 và danh sách có thể được cắt, nối, v.v.

Truy cập các giá trị trong danh sách

Để truy cập các giá trị trong danh sách, hãy sử dụng dấu ngoặc vuông để cắt cùng với chỉ mục hoặc các chỉ mục để lấy giá trị có sẵn tại chỉ mục đó. Ví dụ -

#!/usr/bin/python

list1 = ['physics', 'chemistry', 1997, 2000];
list2 = [1, 2, 3, 4, 5, 6, 7 ];
print "list1[0]: ", list1[0]
print "list2[1:5]: ", list2[1:5]

Khi đoạn mã trên được thực thi, nó tạo ra kết quả sau -

list1[0]:  physics
list2[1:5]:  [2, 3, 4, 5]

Cập nhật danh sách

Bạn có thể cập nhật một hoặc nhiều phần tử của danh sách bằng cách đưa lát cắt ở phía bên trái của toán tử gán và bạn có thể thêm vào các phần tử trong danh sách bằng phương thức append[]. Ví dụ -

#!/usr/bin/python

list = ['physics', 'chemistry', 1997, 2000];
print "Value available at index 2 : "
print list[2]
list[2] = 2001;
print "New value available at index 2 : "
print list[2]

Lưu ý - phương thức append[] được thảo luận trong phần tiếp theo

Khi đoạn mã trên được thực thi, nó tạo ra kết quả sau -

Value available at index 2 :
1997
New value available at index 2 :
2001

Xóa phần tử danh sách

Để xóa một phần tử danh sách, bạn có thể sử dụng câu lệnh del nếu bạn biết chính xác [những] phần tử nào bạn đang xóa hoặc phương thức remove[] nếu bạn không biết. Ví dụ -

#!/usr/bin/python

list1 = ['physics', 'chemistry', 1997, 2000];
print list1
del list1[2];
print "After deleting value at index 2 : "
print list1

Khi đoạn mã trên được thực thi, nó tạo ra kết quả sau -

['physics', 'chemistry', 1997, 2000]
After deleting value at index 2 :
['physics', 'chemistry', 2000]

Lưu ý - phương thức remove[] được thảo luận trong phần tiếp theo

Hoạt động danh sách cơ bản

Các danh sách phản hồi các toán tử + và * giống như các chuỗi;

Trên thực tế, các danh sách đáp ứng tất cả các thao tác trình tự chung mà chúng ta đã sử dụng trên các chuỗi trong chương trước

Python ExpressionResultsDescriptionlen[[1, 2, 3]]3Length[1, 2, 3] + [4, 5, 6][1, 2, 3, 4, 5, 6]Concatenation['Xin chào. '] * 4['Xin chào. ', 'Xin chào. ', 'Xin chào. ', 'Xin chào. ']Repetition3 in [1, 2, 3]TrueMembershipfor x in [1, 2, 3]. in x,1 2 3Lặp lại

Lập chỉ mục, cắt lát và ma trận

Bởi vì danh sách là các chuỗi, lập chỉ mục và cắt hoạt động theo cách tương tự đối với danh sách cũng như đối với chuỗi

Trong bài học này, bạn sẽ thấy cách truy cập các phần tử riêng lẻ và chuỗi các đối tượng trong danh sách của mình. Các phần tử danh sách có thể được truy cập bằng cách sử dụng một chỉ mục số trong ngoặc vuông

>>>

>>> mylist[m]

Đây là kỹ thuật tương tự được sử dụng để truy cập các ký tự riêng lẻ trong một chuỗi. Lập chỉ mục danh sách cũng dựa trên số không

>>>

>>> a = ['spam', 'egg', 'bacon', 'tomato', 'ham', 'lobster']
>>> a
['spam', 'egg', 'bacon', 'tomato', 'ham', 'lobster']

>>> a[0]
'spam'
>>> a[2]
'bacon'
>>> a[5]
'lobster'
>>> a[len[a]-1]
'lobster'
>>> a[6]
Traceback [most recent call last]:
  File "", line 1, in 
    a[6]
IndexError: list index out of range

Các phần tử danh sách cũng có thể được truy cập bằng cách sử dụng chỉ mục danh sách phủ định, được tính từ cuối danh sách

>>>

>>> a = ['spam', 'egg', 'bacon', 'tomato', 'ham', 'lobster']

>>> a[-1]
'lobster'
>>> a[-2]
'ham'
>>> a[-5]
'egg'
>>> a[-6]
'spam'
>>> a[-len[a]]
'spam'
>>> a[-8]
Traceback [most recent call last]:
  File "", line 1, in 
    a[-8]
IndexError: list index out of range

Cắt lát là cú pháp lập chỉ mục trích xuất một phần từ danh sách. Nếu

>>> a = ['spam', 'egg', 'bacon', 'tomato', 'ham', 'lobster']
>>> a
['spam', 'egg', 'bacon', 'tomato', 'ham', 'lobster']

>>> a[0]
'spam'
>>> a[2]
'bacon'
>>> a[5]
'lobster'
>>> a[len[a]-1]
'lobster'
>>> a[6]
Traceback [most recent call last]:
  File "", line 1, in 
    a[6]
IndexError: list index out of range
9 là một danh sách, thì
>>> a = ['spam', 'egg', 'bacon', 'tomato', 'ham', 'lobster']

>>> a[-1]
'lobster'
>>> a[-2]
'ham'
>>> a[-5]
'egg'
>>> a[-6]
'spam'
>>> a[-len[a]]
'spam'
>>> a[-8]
Traceback [most recent call last]:
  File "", line 1, in 
    a[-8]
IndexError: list index out of range
0 trả về phần của
>>> a = ['spam', 'egg', 'bacon', 'tomato', 'ham', 'lobster']
>>> a
['spam', 'egg', 'bacon', 'tomato', 'ham', 'lobster']

>>> a[0]
'spam'
>>> a[2]
'bacon'
>>> a[5]
'lobster'
>>> a[len[a]-1]
'lobster'
>>> a[6]
Traceback [most recent call last]:
  File "", line 1, in 
    a[6]
IndexError: list index out of range
9

  • Bắt đầu với vị trí ________ 92
  • Lên đến nhưng không bao gồm
    >>> a = ['spam', 'egg', 'bacon', 'tomato', 'ham', 'lobster']
    
    >>> a[-1]
    'lobster'
    >>> a[-2]
    'ham'
    >>> a[-5]
    'egg'
    >>> a[-6]
    'spam'
    >>> a[-len[a]]
    'spam'
    >>> a[-8]
    Traceback [most recent call last]:
      File "", line 1, in 
        a[-8]
    IndexError: list index out of range
    
    3
  • Lập chỉ mục tiêu cực cũng có thể được sử dụng

Đây là một ví dụ

>>>

#!/usr/bin/python

list1 = ['physics', 'chemistry', 1997, 2000];
list2 = [1, 2, 3, 4, 5, 6, 7 ];
print "list1[0]: ", list1[0]
print "list2[1:5]: ", list2[1:5]
5

Bỏ qua chỉ mục đầu tiên và/hoặc cuối cùng

  • Bỏ qua chỉ mục đầu tiên
    >>> a = ['spam', 'egg', 'bacon', 'tomato', 'ham', 'lobster']
    
    >>> a[-1]
    'lobster'
    >>> a[-2]
    'ham'
    >>> a[-5]
    'egg'
    >>> a[-6]
    'spam'
    >>> a[-len[a]]
    'spam'
    >>> a[-8]
    Traceback [most recent call last]:
      File "", line 1, in 
        a[-8]
    IndexError: list index out of range
    
    4 bắt đầu lát cắt ở đầu danh sách
  • Bỏ qua chỉ mục cuối cùng
    >>> a = ['spam', 'egg', 'bacon', 'tomato', 'ham', 'lobster']
    
    >>> a[-1]
    'lobster'
    >>> a[-2]
    'ham'
    >>> a[-5]
    'egg'
    >>> a[-6]
    'spam'
    >>> a[-len[a]]
    'spam'
    >>> a[-8]
    Traceback [most recent call last]:
      File "", line 1, in 
        a[-8]
    IndexError: list index out of range
    
    5 sẽ mở rộng lát cắt từ chỉ mục đầu tiên
    >>> a = ['spam', 'egg', 'bacon', 'tomato', 'ham', 'lobster']
    
    >>> a[-1]
    'lobster'
    >>> a[-2]
    'ham'
    >>> a[-5]
    'egg'
    >>> a[-6]
    'spam'
    >>> a[-len[a]]
    'spam'
    >>> a[-8]
    Traceback [most recent call last]:
      File "", line 1, in 
        a[-8]
    IndexError: list index out of range
    
    2 đến cuối danh sách
  • Bỏ qua cả hai chỉ mục
    >>> a = ['spam', 'egg', 'bacon', 'tomato', 'ham', 'lobster']
    
    >>> a[-1]
    'lobster'
    >>> a[-2]
    'ham'
    >>> a[-5]
    'egg'
    >>> a[-6]
    'spam'
    >>> a[-len[a]]
    'spam'
    >>> a[-8]
    Traceback [most recent call last]:
      File "", line 1, in 
        a[-8]
    IndexError: list index out of range
    
    7 trả về một bản sao của toàn bộ danh sách, nhưng không giống như một chuỗi, đó là một bản sao, không phải là một tham chiếu đến cùng một đối tượng

Đây là một ví dụ

>>>

list1[0]:  physics
list2[1:5]:  [2, 3, 4, 5]
0

Một bước tiến có thể được thêm vào ký hiệu lát cắt của bạn. Sử dụng một

>>> a = ['spam', 'egg', 'bacon', 'tomato', 'ham', 'lobster']

>>> a[-1]
'lobster'
>>> a[-2]
'ham'
>>> a[-5]
'egg'
>>> a[-6]
'spam'
>>> a[-len[a]]
'spam'
>>> a[-8]
Traceback [most recent call last]:
  File "", line 1, in 
    a[-8]
IndexError: list index out of range
8 bổ sung và một chỉ số thứ ba chỉ định một bước tiến [còn gọi là một bước] trong ký hiệu lát cắt của bạn. Sải bước có thể là tích cực hoặc tiêu cực

>>>

list1[0]:  physics
list2[1:5]:  [2, 3, 4, 5]
2

00. 00 Trong video này, bạn sẽ thực hành lập chỉ mục và cắt danh sách. Các phần tử của một danh sách có thể được truy cập bởi một chỉ số. Để làm điều đó, bạn đặt tên cho danh sách, rồi bên trong một cặp dấu ngoặc vuông, bạn sử dụng một số chỉ mục, giống như những gì tôi đang trình bày ngay tại đây

00. 17 Điều đó cho phép truy cập vào các phần tử riêng lẻ trong danh sách. Việc lập chỉ mục cho danh sách là không dựa trên. Vì vậy, nếu bạn có một danh sách như thế này, với sáu yếu tố này, các chỉ số bắt đầu bằng

>>> a = ['spam', 'egg', 'bacon', 'tomato', 'ham', 'lobster']

>>> a[-1]
'lobster'
>>> a[-2]
'ham'
>>> a[-5]
'egg'
>>> a[-6]
'spam'
>>> a[-len[a]]
'spam'
>>> a[-8]
Traceback [most recent call last]:
  File "", line 1, in 
    a[-8]
IndexError: list index out of range
9 và sẽ tăng lên đến
#!/usr/bin/python

list1 = ['physics', 'chemistry', 1997, 2000];
list2 = [1, 2, 3, 4, 5, 6, 7 ];
print "list1[0]: ", list1[0]
print "list2[1:5]: ", list2[1:5]
50

00. 36 Để tôi bảo bạn thử xem. Bắt đầu với một danh sách mới

00. 47 Đây là

>>> a = ['spam', 'egg', 'bacon', 'tomato', 'ham', 'lobster']
>>> a
['spam', 'egg', 'bacon', 'tomato', 'ham', 'lobster']

>>> a[0]
'spam'
>>> a[2]
'bacon'
>>> a[5]
'lobster'
>>> a[len[a]-1]
'lobster'
>>> a[6]
Traceback [most recent call last]:
  File "", line 1, in 
    a[6]
IndexError: list index out of range
9. Như đã mô tả, các chỉ mục không dựa trên danh sách, vì vậy
#!/usr/bin/python

list1 = ['physics', 'chemistry', 1997, 2000];
list2 = [1, 2, 3, 4, 5, 6, 7 ];
print "list1[0]: ", list1[0]
print "list2[1:5]: ", list2[1:5]
52 sẽ truy cập mục đầu tiên trong danh sách đó

01. 03

#!/usr/bin/python

list1 = ['physics', 'chemistry', 1997, 2000];
list2 = [1, 2, 3, 4, 5, 6, 7 ];
print "list1[0]: ", list1[0]
print "list2[1:5]: ", list2[1:5]
53 sẽ truy cập cái thứ ba. Và trong trường hợp này,
#!/usr/bin/python

list1 = ['physics', 'chemistry', 1997, 2000];
list2 = [1, 2, 3, 4, 5, 6, 7 ];
print "list1[0]: ", list1[0]
print "list2[1:5]: ", list2[1:5]
54 sẽ truy cập cuối cùng. Một cách khác để đến đó là ________ 89 và ________ 156 [độ dài] của ________ 89 trừ đi _______ 158

01. 18 Nếu bạn sử dụng giá trị chỉ mục quá cao, Python sẽ đưa ra một ngoại lệ—một

#!/usr/bin/python

list1 = ['physics', 'chemistry', 1997, 2000];
list2 = [1, 2, 3, 4, 5, 6, 7 ];
print "list1[0]: ", list1[0]
print "list2[1:5]: ", list2[1:5]
59 nói rằng chỉ mục danh sách nằm ngoài phạm vi. Lập chỉ mục tiêu cực cũng có sẵn

01. 33 Nếu bạn muốn truy cập mục cuối cùng, bạn sẽ bắt đầu với

list1[0]:  physics
list2[1:5]:  [2, 3, 4, 5]
00. Vì vậy, hãy tiếp tục làm việc với danh sách đó
>>> a = ['spam', 'egg', 'bacon', 'tomato', 'ham', 'lobster']
>>> a
['spam', 'egg', 'bacon', 'tomato', 'ham', 'lobster']

>>> a[0]
'spam'
>>> a[2]
'bacon'
>>> a[5]
'lobster'
>>> a[len[a]-1]
'lobster'
>>> a[6]
Traceback [most recent call last]:
  File "", line 1, in 
    a[6]
IndexError: list index out of range
9 Tôi sẽ yêu cầu bạn thử lập chỉ mục tiêu cực

01. 44

list1[0]:  physics
list2[1:5]:  [2, 3, 4, 5]
02 sẽ truy cập mục cuối cùng,
list1[0]:  physics
list2[1:5]:  [2, 3, 4, 5]
03, v.v. Vì vậy, trong trường hợp này,
list1[0]:  physics
list2[1:5]:  [2, 3, 4, 5]
04—cũng là độ dài âm của danh sách của bạn—sẽ trả về mục đầu tiên

02. 05 Nếu bạn cố truy cập vào một chỉ mục nằm ngoài phạm vi, bạn cũng sẽ nhận được

list1[0]:  physics
list2[1:5]:  [2, 3, 4, 5]
05 đó. Cắt lát cũng có sẵn. Cắt lát là một cú pháp lập chỉ mục sẽ trích xuất một phần từ danh sách của bạn. Vì vậy, trong ví dụ này, nếu
>>> a = ['spam', 'egg', 'bacon', 'tomato', 'ham', 'lobster']
>>> a
['spam', 'egg', 'bacon', 'tomato', 'ham', 'lobster']

>>> a[0]
'spam'
>>> a[2]
'bacon'
>>> a[5]
'lobster'
>>> a[len[a]-1]
'lobster'
>>> a[6]
Traceback [most recent call last]:
  File "", line 1, in 
    a[6]
IndexError: list index out of range
9 là danh sách của bạn, thì bên trong dấu ngoặc vuông, bạn sẽ có hai số chỉ mục được phân tách bằng dấu hai chấm [
>>> a = ['spam', 'egg', 'bacon', 'tomato', 'ham', 'lobster']

>>> a[-1]
'lobster'
>>> a[-2]
'ham'
>>> a[-5]
'egg'
>>> a[-6]
'spam'
>>> a[-len[a]]
'spam'
>>> a[-8]
Traceback [most recent call last]:
  File "", line 1, in 
    a[-8]
IndexError: list index out of range
8] và nó sẽ trả về một phần của danh sách
>>> a = ['spam', 'egg', 'bacon', 'tomato', 'ham', 'lobster']
>>> a
['spam', 'egg', 'bacon', 'tomato', 'ham', 'lobster']

>>> a[0]
'spam'
>>> a[2]
'bacon'
>>> a[5]
'lobster'
>>> a[len[a]-1]
'lobster'
>>> a[6]
Traceback [most recent call last]:
  File "", line 1, in 
    a[6]
IndexError: list index out of range
9 đó sẽ bắt đầu bằng vị trí
>>> a = ['spam', 'egg', 'bacon', 'tomato', 'ham', 'lobster']

>>> a[-1]
'lobster'
>>> a[-2]
'ham'
>>> a[-5]
'egg'
>>> a[-6]
'spam'
>>> a[-len[a]]
'spam'
>>> a[-8]
Traceback [most recent call last]:
  File "", line 1, in 
    a[-8]
IndexError: list index out of range
2 và tiếp tục

02. 38 Sử dụng cùng một ví dụ từ trước, nếu bạn lấy

list1[0]:  physics
list2[1:5]:  [2, 3, 4, 5]
21, bạn sẽ nhận được ba đối tượng ở giữa, bắt đầu từ chỉ mục
list1[0]:  physics
list2[1:5]:  [2, 3, 4, 5]
22 và tăng dần lên chỉ mục
list1[0]:  physics
list2[1:5]:  [2, 3, 4, 5]
23, nhưng không bao gồm
#!/usr/bin/python

list1 = ['physics', 'chemistry', 1997, 2000];
list2 = [1, 2, 3, 4, 5, 6, 7 ];
print "list1[0]: ", list1[0]
print "list2[1:5]: ", list2[1:5]
50

02. 50 Để tôi bảo bạn thử xem. Được rồi, đây là danh sách của bạn. Nếu bạn muốn cắt thì sao? . Đối với chỉ mục thứ hai, sử dụng

#!/usr/bin/python

list1 = ['physics', 'chemistry', 1997, 2000];
list2 = [1, 2, 3, 4, 5, 6, 7 ];
print "list1[0]: ", list1[0]
print "list2[1:5]: ", list2[1:5]
50. Từ
list1[0]:  physics
list2[1:5]:  [2, 3, 4, 5]
22 đến nhưng không bao gồm
#!/usr/bin/python

list1 = ['physics', 'chemistry', 1997, 2000];
list2 = [1, 2, 3, 4, 5, 6, 7 ];
print "list1[0]: ", list1[0]
print "list2[1:5]: ", list2[1:5]
50

03. 05 tuyệt vời. Bạn cũng có thể sử dụng các chỉ số phủ định, vì vậy bạn có thể nói bắt đầu từ

list1[0]:  physics
list2[1:5]:  [2, 3, 4, 5]
29 và đi đến
#!/usr/bin/python

list1 = ['physics', 'chemistry', 1997, 2000];
print list1
del list1[2];
print "After deleting value at index 2 : "
print list1
40, điều này giống như đi từ
#!/usr/bin/python

list1 = ['physics', 'chemistry', 1997, 2000];
list2 = [1, 2, 3, 4, 5, 6, 7 ];
print "list1[0]: ", list1[0]
print "list2[1:5]: ", list2[1:5]
58 đến
list1[0]:  physics
list2[1:5]:  [2, 3, 4, 5]
23

03. 19 Và bạn có thể xác nhận rằng tại đây

03. 25 như là

#!/usr/bin/python

list1 = ['physics', 'chemistry', 1997, 2000];
print list1
del list1[2];
print "After deleting value at index 2 : "
print list1
43

03. 29 Có sẵn tốc ký. Bằng cách bỏ qua chỉ mục đầu tiên, lát cắt của bạn sẽ bắt đầu ở đầu danh sách và chuyển sang chỉ mục thứ hai. Nếu bạn bỏ qua chỉ mục cuối cùng, nó sẽ mở rộng lát cắt từ chỉ mục đầu tiên và đi đến cuối danh sách. Và nếu bạn bỏ qua cả hai chỉ mục, nó sẽ trả về một bản sao của toàn bộ danh sách

03. 54 Và không giống như một chuỗi, nó là một bản sao—không phải là một tham chiếu đến cùng một đối tượng. Vì vậy, điều gì sẽ xảy ra nếu bạn bỏ qua chỉ mục đầu tiên? . Giống như từ

>>> a = ['spam', 'egg', 'bacon', 'tomato', 'ham', 'lobster']

>>> a[-1]
'lobster'
>>> a[-2]
'ham'
>>> a[-5]
'egg'
>>> a[-6]
'spam'
>>> a[-len[a]]
'spam'
>>> a[-8]
Traceback [most recent call last]:
  File "", line 1, in 
    a[-8]
IndexError: list index out of range
9 đến
list1[0]:  physics
list2[1:5]:  [2, 3, 4, 5]
23

04. 12 Và theo cách tương tự, việc loại bỏ chỉ mục thứ hai sẽ đi đến cùng, bắt đầu từ chỉ mục này cho đến hết. Ở đây, bạn có thể sử dụng

#!/usr/bin/python

list1 = ['physics', 'chemistry', 1997, 2000];
list2 = [1, 2, 3, 4, 5, 6, 7 ];
print "list1[0]: ", list1[0]
print "list2[1:5]: ", list2[1:5]
56, sẽ trả về giá trị là ________ 547 và nếu chúng ta đi từ
list1[0]:  physics
list2[1:5]:  [2, 3, 4, 5]
22 trở lên nhưng không bao gồm ________ 547, làm chỉ mục

04. 35 Nếu bạn xóa cả hai chỉ mục và chỉ có một

['physics', 'chemistry', 1997, 2000]
After deleting value at index 2 :
['physics', 'chemistry', 2000]
40, nó sẽ trả về toàn bộ danh sách. Bạn có thể thử điều này bằng cách xem liệu nó có bằng với
>>> a = ['spam', 'egg', 'bacon', 'tomato', 'ham', 'lobster']
>>> a
['spam', 'egg', 'bacon', 'tomato', 'ham', 'lobster']

>>> a[0]
'spam'
>>> a[2]
'bacon'
>>> a[5]
'lobster'
>>> a[len[a]-1]
'lobster'
>>> a[6]
Traceback [most recent call last]:
  File "", line 1, in 
    a[6]
IndexError: list index out of range
9, tức là bằng với
#!/usr/bin/python

list1 = ['physics', 'chemistry', 1997, 2000];
print list1
del list1[2];
print "After deleting value at index 2 : "
print list1
43. Nhưng đây là một bản sao và không phải là một tài liệu tham khảo, trong khi nếu bạn đã thử
['physics', 'chemistry', 1997, 2000]
After deleting value at index 2 :
['physics', 'chemistry', 2000]
43 thì đó là một bản sao

05. 01 Nó không liên quan đến bản gốc. Điều đó có thể gây nhầm lẫn bởi vì nếu bạn đã từng làm việc với các chuỗi trước đây, nếu bạn có một chuỗi,

['physics', 'chemistry', 1997, 2000]
After deleting value at index 2 :
['physics', 'chemistry', 2000]
44, là
['physics', 'chemistry', 1997, 2000]
After deleting value at index 2 :
['physics', 'chemistry', 2000]
45, chỉ sử dụng cú pháp của ____ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

05. 20 Điều thú vị về nó không chỉ là

['physics', 'chemistry', 1997, 2000]
After deleting value at index 2 :
['physics', 'chemistry', 2000]
47 với chỉ số dấu hai chấm, mà nó còn là một tham chiếu đến đối tượng đó. Trong khi với một danh sách, nó trả về một đối tượng hoàn toàn mới

05. 37 Có thể thêm chỉ mục thứ ba sau dấu hai chấm bổ sung. Chỉ số thứ ba đó biểu thị một bước tiến, nhưng đôi khi nó còn được gọi là một bước. Vì vậy, trong ví dụ này, nếu bạn có một lát cắt đi từ

>>> a = ['spam', 'egg', 'bacon', 'tomato', 'ham', 'lobster']

>>> a[-1]
'lobster'
>>> a[-2]
'ham'
>>> a[-5]
'egg'
>>> a[-6]
'spam'
>>> a[-len[a]]
'spam'
>>> a[-8]
Traceback [most recent call last]:
  File "", line 1, in 
    a[-8]
IndexError: list index out of range
9 đến
#!/usr/bin/python

list1 = ['physics', 'chemistry', 1997, 2000];
print list1
del list1[2];
print "After deleting value at index 2 : "
print list1
47, với một bước là
list1[0]:  physics
list2[1:5]:  [2, 3, 4, 5]
22, bạn sẽ trả về các đối tượng ở chỉ mục
>>> a = ['spam', 'egg', 'bacon', 'tomato', 'ham', 'lobster']

>>> a[-1]
'lobster'
>>> a[-2]
'ham'
>>> a[-5]
'egg'
>>> a[-6]
'spam'
>>> a[-len[a]]
'spam'
>>> a[-8]
Traceback [most recent call last]:
  File "", line 1, in 
    a[-8]
IndexError: list index out of range
9,
list1[0]:  physics
list2[1:5]:  [2, 3, 4, 5]
22 và
list1[0]:  physics
list2[1:5]:  [2, 3, 4, 5]
23—
>>> mylist[m]
84,
>>> mylist[m]
85 và
>>> mylist[m]
86

06. 02 Vì vậy, nếu bạn đi từ chỉ số

>>> a = ['spam', 'egg', 'bacon', 'tomato', 'ham', 'lobster']

>>> a[-1]
'lobster'
>>> a[-2]
'ham'
>>> a[-5]
'egg'
>>> a[-6]
'spam'
>>> a[-len[a]]
'spam'
>>> a[-8]
Traceback [most recent call last]:
  File "", line 1, in 
    a[-8]
IndexError: list index out of range
9 lên đến
#!/usr/bin/python

list1 = ['physics', 'chemistry', 1997, 2000];
print list1
del list1[2];
print "After deleting value at index 2 : "
print list1
47 với sải chân là
list1[0]:  physics
list2[1:5]:  [2, 3, 4, 5]
22, bạn sẽ thấy nó giành lấy mục thứ nhất, thứ ba và thứ năm, bỏ qua với sải chân là hai

06. 14 Thay vào đó, nếu bạn bắt đầu điều đó tại

#!/usr/bin/python

list1 = ['physics', 'chemistry', 1997, 2000];
list2 = [1, 2, 3, 4, 5, 6, 7 ];
print "list1[0]: ", list1[0]
print "list2[1:5]: ", list2[1:5]
58, thì bạn sẽ nhận được ba điều còn lại

06. 20 Và có thể có một bước tiến âm, mặc dù bạn đặt chỉ số đầu tiên là giá trị cao nhất, sau đó, nơi bạn muốn tăng lên, một

>>> a = ['spam', 'egg', 'bacon', 'tomato', 'ham', 'lobster']

>>> a[-1]
'lobster'
>>> a[-2]
'ham'
>>> a[-5]
'egg'
>>> a[-6]
'spam'
>>> a[-len[a]]
'spam'
>>> a[-8]
Traceback [most recent call last]:
  File "", line 1, in 
    a[-8]
IndexError: list index out of range
9, và trong trường hợp này, nó sẽ tăng lên
#!/usr/bin/python

list1 = ['physics', 'chemistry', 1997, 2000];
print list1
del list1[2];
print "After deleting value at index 2 : "
print list1
40

06. 36 Trên thực tế, một cú pháp đơn giản để đảo ngược danh sách của bạn một cách đơn giản là để trống hai chỉ mục đầu tiên bằng dấu hai chấm, sau đó là dấu hai chấm thứ hai và một

list1[0]:  physics
list2[1:5]:  [2, 3, 4, 5]
00—điều này sẽ đảo ngược danh sách của bạn

06. 50 Tiếp theo, bạn sẽ thực hành sử dụng toán tử và một số hàm tích hợp sẵn của Python trong danh sách của bạn

JulianV vào tháng 12. 13, 2019

Tốt đẹp

Orlando Uribe vào ngày 8 tháng 3 năm 2020

Cảm ơn vì tài liệu này. Tôi đoán có một lỗi đánh máy [??] trong một trong những ví dụ được viết theo bước tiến [ví dụ video là OK]

lỗi đánh máy

#!/usr/bin/python

list1 = ['physics', 'chemistry', 1997, 2000];
print list1
del list1[2];
print "After deleting value at index 2 : "
print list1
4

phát biểu đúng phải là

['physics', 'chemistry', 1997, 2000]
After deleting value at index 2 :
['physics', 'chemistry', 2000]
4

nếu không thì,

>>> mylist[m]
8

Chris Bailey Nhóm RP vào ngày 8 tháng 3 năm 2020

Xin chào @Orlando Uribe, Bạn nói đúng, tôi sẽ thay đổi nó để phù hợp với bài học trong video. Cảm ơn

Ajay vào ngày 3 tháng 6 năm 2020

@chris Video rất nhiều thông tin, cảm ơn vì điều này. Khi tôi đang thực hành các ví dụ, có một nghi ngờ

>>> a = ['spam', 'egg', 'bacon', 'tomato', 'ham', 'lobster']

>>> a[-1]
'lobster'
>>> a[-2]
'ham'
>>> a[-5]
'egg'
>>> a[-6]
'spam'
>>> a[-len[a]]
'spam'
>>> a[-8]
Traceback [most recent call last]:
  File "", line 1, in 
    a[-8]
IndexError: list index out of range
1

Với sải chân âm tại sao không bao gồm 9

Nó có loại trừ giá trị cuối cùng không?

Chris Bailey Nhóm RP vào ngày 3 tháng 6 năm 2020

Xin chào @Ajay,

Cảm ơn đã xem khóa học. Lát bạn đã tạo sẽ bắt đầu ở chỉ mục 6 và kết thúc ở chỉ mục 1 và không bao gồm chỉ mục 0, đó là lý do tại sao bạn không nhận được chỉ mục 0 trên 9. Nếu bạn đã sử dụng

>>> a = ['spam', 'egg', 'bacon', 'tomato', 'ham', 'lobster']
>>> a
['spam', 'egg', 'bacon', 'tomato', 'ham', 'lobster']

>>> a[0]
'spam'
>>> a[2]
'bacon'
>>> a[5]
'lobster'
>>> a[len[a]-1]
'lobster'
>>> a[6]
Traceback [most recent call last]:
  File "", line 1, in 
    a[6]
IndexError: list index out of range
0

Điều đó sẽ bao gồm chỉ số 0. Tôi hy vọng điều này sẽ giúp giải thích những gì đang xảy ra. Dẫn lại từ văn bản dưới bài học

Cắt lát là cú pháp lập chỉ mục trích xuất một phần từ danh sách. Nếu

>>> a = ['spam', 'egg', 'bacon', 'tomato', 'ham', 'lobster']
>>> a
['spam', 'egg', 'bacon', 'tomato', 'ham', 'lobster']

>>> a[0]
'spam'
>>> a[2]
'bacon'
>>> a[5]
'lobster'
>>> a[len[a]-1]
'lobster'
>>> a[6]
Traceback [most recent call last]:
  File "", line 1, in 
    a[6]
IndexError: list index out of range
9 là một danh sách, thì
>>> a = ['spam', 'egg', 'bacon', 'tomato', 'ham', 'lobster']

>>> a[-1]
'lobster'
>>> a[-2]
'ham'
>>> a[-5]
'egg'
>>> a[-6]
'spam'
>>> a[-len[a]]
'spam'
>>> a[-8]
Traceback [most recent call last]:
  File "", line 1, in 
    a[-8]
IndexError: list index out of range
0 trả về phần của
>>> a = ['spam', 'egg', 'bacon', 'tomato', 'ham', 'lobster']
>>> a
['spam', 'egg', 'bacon', 'tomato', 'ham', 'lobster']

>>> a[0]
'spam'
>>> a[2]
'bacon'
>>> a[5]
'lobster'
>>> a[len[a]-1]
'lobster'
>>> a[6]
Traceback [most recent call last]:
  File "", line 1, in 
    a[6]
IndexError: list index out of range
9

  • Bắt đầu với vị trí ________ 92
  • Lên đến nhưng không bao gồm
    >>> a = ['spam', 'egg', 'bacon', 'tomato', 'ham', 'lobster']
    
    >>> a[-1]
    'lobster'
    >>> a[-2]
    'ham'
    >>> a[-5]
    'egg'
    >>> a[-6]
    'spam'
    >>> a[-len[a]]
    'spam'
    >>> a[-8]
    Traceback [most recent call last]:
      File "", line 1, in 
        a[-8]
    IndexError: list index out of range
    
    3

Ajay vào ngày 4 tháng 6 năm 2020

@chris cảm ơn vì đã làm rõ

kiran vào tháng 8. 11, 2020

>>> a = ['spam', 'egg', 'bacon', 'tomato', 'ham', 'lobster']
>>> a
['spam', 'egg', 'bacon', 'tomato', 'ham', 'lobster']

>>> a[0]
'spam'
>>> a[2]
'bacon'
>>> a[5]
'lobster'
>>> a[len[a]-1]
'lobster'
>>> a[6]
Traceback [most recent call last]:
  File "", line 1, in 
    a[6]
IndexError: list index out of range
1

Tại sao nó trả về chuỗi rỗng? . Bạn có thể cho tôi rõ ràng nhất về điều này?

>>> a = ['spam', 'egg', 'bacon', 'tomato', 'ham', 'lobster']
>>> a
['spam', 'egg', 'bacon', 'tomato', 'ham', 'lobster']

>>> a[0]
'spam'
>>> a[2]
'bacon'
>>> a[5]
'lobster'
>>> a[len[a]-1]
'lobster'
>>> a[6]
Traceback [most recent call last]:
  File "", line 1, in 
    a[6]
IndexError: list index out of range
2

kiran vào tháng 8. 11, 2020

Giá trị sẽ là

>>> a = ['spam', 'egg', 'bacon', 'tomato', 'ham', 'lobster']

>>> a[-1]
'lobster'
>>> a[-2]
'ham'
>>> a[-5]
'egg'
>>> a[-6]
'spam'
>>> a[-len[a]]
'spam'
>>> a[-8]
Traceback [most recent call last]:
  File "", line 1, in 
    a[-8]
IndexError: list index out of range
19

Bartosz Zaczyński Nhóm RP vào tháng 8. 12, 2020

Hãy nghĩ về các chỉ số âm như một ký hiệu tốc ký để trừ đi độ dài chuỗi đã cho

>>> a = ['spam', 'egg', 'bacon', 'tomato', 'ham', 'lobster']
>>> a
['spam', 'egg', 'bacon', 'tomato', 'ham', 'lobster']

>>> a[0]
'spam'
>>> a[2]
'bacon'
>>> a[5]
'lobster'
>>> a[len[a]-1]
'lobster'
>>> a[6]
Traceback [most recent call last]:
  File "", line 1, in 
    a[6]
IndexError: list index out of range
3

Các chỉ số tiêu cực trong ví dụ “hello world” của bạn sẽ chuyển thành điều này

>>> a = ['spam', 'egg', 'bacon', 'tomato', 'ham', 'lobster']
>>> a
['spam', 'egg', 'bacon', 'tomato', 'ham', 'lobster']

>>> a[0]
'spam'
>>> a[2]
'bacon'
>>> a[5]
'lobster'
>>> a[len[a]-1]
'lobster'
>>> a[6]
Traceback [most recent call last]:
  File "", line 1, in 
    a[6]
IndexError: list index out of range
4

Bạn đang nhận được một chuỗi trống vì chỉ số bên trái cao hơn chỉ số bên phải, trong khi bạn chưa chỉ ra thứ tự đảo ngược với đối số "bước" thứ ba. Nếu bạn đã làm, đây là bạn sẽ nhận được

>>> a = ['spam', 'egg', 'bacon', 'tomato', 'ham', 'lobster']
>>> a
['spam', 'egg', 'bacon', 'tomato', 'ham', 'lobster']

>>> a[0]
'spam'
>>> a[2]
'bacon'
>>> a[5]
'lobster'
>>> a[len[a]-1]
'lobster'
>>> a[6]
Traceback [most recent call last]:
  File "", line 1, in 
    a[6]
IndexError: list index out of range
5

Bạn có thể lấy các chỉ số kết quả được sử dụng bởi vòng lặp bên dưới như thế này

>>> a = ['spam', 'egg', 'bacon', 'tomato', 'ham', 'lobster']
>>> a
['spam', 'egg', 'bacon', 'tomato', 'ham', 'lobster']

>>> a[0]
'spam'
>>> a[2]
'bacon'
>>> a[5]
'lobster'
>>> a[len[a]-1]
'lobster'
>>> a[6]
Traceback [most recent call last]:
  File "", line 1, in 
    a[6]
IndexError: list index out of range
6

Nó trả về một bộ mà bạn có thể giải nén và chuyển đến hàm

>>> a = ['spam', 'egg', 'bacon', 'tomato', 'ham', 'lobster']
>>> a
['spam', 'egg', 'bacon', 'tomato', 'ham', 'lobster']

>>> a[0]
'spam'
>>> a[2]
'bacon'
>>> a[5]
'lobster'
>>> a[len[a]-1]
'lobster'
>>> a[6]
Traceback [most recent call last]:
  File "", line 1, in 
    a[6]
IndexError: list index out of range
00

>>> a = ['spam', 'egg', 'bacon', 'tomato', 'ham', 'lobster']
>>> a
['spam', 'egg', 'bacon', 'tomato', 'ham', 'lobster']

>>> a[0]
'spam'
>>> a[2]
'bacon'
>>> a[5]
'lobster'
>>> a[len[a]-1]
'lobster'
>>> a[6]
Traceback [most recent call last]:
  File "", line 1, in 
    a[6]
IndexError: list index out of range
7

Đây là các chỉ số được sử dụng bởi cú pháp dấu ngoặc vuông

kiran vào tháng 8. 12, 2020

Rực rỡ @Bartosz Zaczyński. Cảm ơn

mo vào tháng 12. 21, 2021

Tôi vui vẻ bắt đầu sử dụng bpython; . Thử tất cả mọi thứ. Và nhiều hơn nữa. ] Làm điều đó tôi gặp phải điều này

Chỉ mục trong Python là gì?

Như đã thảo luận trước đó, hàm index[] trong Python trả về vị trí của phần tử trong danh sách đã chỉ định hoặc các ký tự trong chuỗi . Nó tuân theo cùng một cú pháp cho dù bạn sử dụng nó trong danh sách hay chuỗi. Lý do là một chuỗi trong Python được coi là một danh sách các ký tự bắt đầu từ chỉ số 0.

chỉ mục là gì [

Việc lập chỉ mục phủ định có thể được thực hiện bằng Python, không thể truy cập được bằng các ngôn ngữ lập trình khác. Điều này có nghĩa là -1 đại diện cho phần tử cuối cùng của mảng , trong khi -2 đại diện cho phần tử cuối cùng thứ hai của mảng. Lập chỉ mục tiêu cực của mảng bắt đầu ở cuối.

Chỉ mục [] có phải là một phương thức chuỗi Python không?

Phương thức chuỗi Python index[] xác định xem chuỗi str có xuất hiện trong chuỗi hoặc trong chuỗi con của chuỗi hay không nếu chỉ mục bắt đầu beg và chỉ mục kết thúc được đưa ra. This method is same as find[], but raises an exception if sub is not found.

Python 1 có phải là một chỉ mục không?

Python sử dụng lập chỉ mục dựa trên số không . Điều đó có nghĩa là, phần tử đầu tiên [giá trị 'đỏ'] có chỉ số 0, phần tử thứ hai [giá trị 'xanh lá cây'] có chỉ số 1, v.v.

Chủ Đề