Hướng dẫn hands-on data structures and algorithms with python 3rd edition - thực hành cấu trúc dữ liệu và thuật toán với phiên bản thứ 3 của python

Hiểu cách thực hiện các cấu trúc dữ liệu và thuật toán khác nhau một cách thông minh có thể làm cho mã python và ứng dụng của bạn có thể duy trì và hiệu quả hơn

Các tính năng chính

  • Khám phá các triển khai chức năng và phản ứng của các cấu trúc dữ liệu truyền thống và tiên tiến
  • Áp dụng một loạt các thuật toán trong mã Python của bạn
  • Thực hiện các kỹ năng bạn đã học để tối đa hóa hiệu suất của các ứng dụng của bạn

Mô tả cuốn sách

Chọn cấu trúc dữ liệu phù hợp là then chốt để tối ưu hóa hiệu suất và khả năng mở rộng của các ứng dụng. Phiên bản mới này của các cấu trúc và thuật toán dữ liệu thực hành với Python sẽ mở rộng sự hiểu biết của bạn về các cấu trúc chính, bao gồm các ngăn xếp, hàng đợi và danh sách, và cũng chỉ cho bạn cách áp dụng hàng đợi ưu tiên và đống trong các ứng dụng. Bạn sẽ tìm hiểu cách phân tích và so sánh các thuật toán Python và hiểu thuật toán nào nên được sử dụng cho một vấn đề dựa trên thời gian chạy và độ phức tạp tính toán. Bạn cũng sẽ tự tin tổ chức mã của mình theo cách có thể quản lý, nhất quán và có thể mở rộng, điều này sẽ tăng năng suất của bạn như một nhà phát triển Python.

Đến cuối cuốn sách Python này, bạn sẽ có thể thao tác các cấu trúc và thuật toán dữ liệu quan trọng nhất để lưu trữ, tổ chức và truy cập dữ liệu hiệu quả hơn trong các ứng dụng của bạn.

Những gì bạn sẽ học

  • Hiểu các cấu trúc và thuật toán dữ liệu phổ biến bằng cách sử dụng các ví dụ, sơ đồ và bài tập
  • Khám phá cách các cấu trúc phức tạp hơn, chẳng hạn như hàng đợi ưu tiên và hàng đống, có thể mang lại lợi ích cho mã của bạn
  • Thực hiện các thuật toán tìm kiếm, sắp xếp và lựa chọn trên các chuỗi số và chuỗi
  • Trở nên tự tin với thuật toán phù hợp với chuỗi khóa
  • Hiểu các mô hình thuật toán và áp dụng các kỹ thuật lập trình động
  • Sử dụng ký hiệu tiệm cận để phân tích hiệu suất thuật toán liên quan đến độ phức tạp về thời gian và không gian
  • Viết mã mạnh mẽ, mạnh mẽ bằng cách sử dụng các tính năng mới nhất của Python

Cuốn sách này dành cho ai

Cuốn sách này dành cho các nhà phát triển và lập trình viên quan tâm đến việc tìm hiểu về cấu trúc dữ liệu và thuật toán trong Python để viết các chương trình phức tạp, linh hoạt. Kiến thức lập trình Python cơ bản được mong đợi.

Mục lục

  1. Kiểu và cấu trúc dữ liệu Python
  2. Giới thiệu về Thiết kế thuật toán
  3. Kỹ thuật và chiến lược thiết kế thuật toán
  4. Danh sách liên kết
  5. Stacks và hàng đợi
  6. Cây
  7. Hàng đợi hàng đống và ưu tiên
  8. Bàn băm
  9. Đồ thị và thuật toán
  10. Đang tìm kiếm
  11. Sắp xếp
  12. Thuật toán lựa chọn
  13. Thuật toán khớp chuỗi
  14. Phụ lục: Câu trả lời cho các câu hỏi

str1 = 'Hello how are you'
str2 = "Hello how are you"
str3 = """multiline 
       String"""
print[str1]
print[str2]
print[str3]
6

Kết nối

str1 = 'Hello how are you'
str2 = "Hello how are you"
str3 = """multiline 
       String"""
print[str1]
print[str2]
print[str3]
7

  • str1 = 'Hello how are you'
    str2 = "Hello how are you"
    str3 = """multiline 
           String"""
    print[str1]
    print[str2]
    print[str3]
    
    8
    [int]: In Python, the interpreter takes a sequence of decimal digits as a decimal value, such as the integers
    f = 'data' 
    s = 'structure'
    print[f + s]
    print['Data ' + 'structure']
    
    0,
    f = 'data' 
    s = 'structure'
    print[f + s]
    print['Data ' + 'structure']
    
    1, or
    f = 'data' 
    s = 'structure'
    print[f + s]
    print['Data ' + 'structure']
    
    2.
  • Sự lặp lại: Python considers a value having a floating-point value as a float type; it is specified with a decimal point. It is used to store floating-point numbers such as
    f = 'data' 
    s = 'structure'
    print[f + s]
    print['Data ' + 'structure']
    
    3 and
    f = 'data' 
    s = 'structure'
    print[f + s]
    print['Data ' + 'structure']
    
    4. It is accurate up to
    f = 'data' 
    s = 'structure'
    print[f + s]
    print['Data ' + 'structure']
    
    5 decimal points.
  • str1 = 'Hello how are you'
    str2 = "Hello how are you"
    str3 = """multiline 
           String"""
    print[str1]
    print[str2]
    print[str3]
    
    9
    : A complex number is represented using two floating-point values. It contains an ordered pair, such as a + ib. Here, a and b denote real numbers and i denotes the imaginary component. The complex numbers take the form of
    f = 'data' 
    s = 'structure'
    print[f + s]
    print['Data ' + 'structure']
    
    6,
    f = 'data' 
    s = 'structure'
    print[f + s]
    print['Data ' + 'structure']
    
    7, and so on.

Hello how are you
Hello how are you
multiline 
String
0

Tư cách thành viên

print[type[bool[22]]]
print[type[True]]
print[type[False]]

Đầu ra sẽ như sau:




Trong Python, các giá trị số có thể được sử dụng làm giá trị bool bằng cách sử dụng hàm

datastructure
Data structure
2 tích hợp. Bất kỳ số nào [số nguyên, phao, phức tạp] có giá trị bằng 0 được coi là
f = 'data' 
s = 'structure'
print[f + s]
print['Data ' + 'structure']
9 và giá trị khác không được coi là
f = 'data' 
s = 'structure'
print[f + s]
print['Data ' + 'structure']
8. Ví dụ:

bool[False]
print[bool[False]]
va1 = 0
print[bool[va1]]
va2 = 11
print[bool[va2]]
va3 = -2.3
print[bool[va3]]

Đầu ra của mã trên sẽ như sau.

False
False
True
True

Các loại dữ liệu trình tự cũng là một loại dữ liệu rất cơ bản và phổ biến, mà chúng tôi sẽ xem xét tiếp theo.

Trình tự

Các loại dữ liệu trình tự được sử dụng để lưu trữ nhiều giá trị theo một biến theo cách có tổ chức và hiệu quả. Có bốn loại chuỗi cơ bản: chuỗi, phạm vi, danh sách và bộ dữ liệu.

Dây

Một chuỗi là một chuỗi các ký tự bất biến được biểu diễn trong các trích dẫn đơn, gấp đôi hoặc ba.

Bất biến có nghĩa là một khi một kiểu dữ liệu đã được gán một số giá trị, nó có thể thay đổi.

Loại chuỗi trong Python được gọi là

datastructure
Data structure
5. Một chuỗi trích dẫn ba có thể kéo dài thành nhiều dòng bao gồm tất cả khoảng trắng trong chuỗi. Ví dụ:

str1 = 'Hello how are you'
str2 = "Hello how are you"
str3 = """multiline 
       String"""
print[str1]
print[str2]
print[str3]

Đầu ra sẽ như sau:

Hello how are you
Hello how are you
multiline 
String

Toán tử

datastructure
Data structure
6 nối các chuỗi, trả về một chuỗi sau khi kết hợp các toán hạng, kết hợp chúng với nhau. Ví dụ:

f = 'data' 
s = 'structure'
print[f + s]
print['Data ' + 'structure']

Đầu ra sẽ như sau:

datastructure
Data structure

Toán tử

datastructure
Data structure
6 nối các chuỗi, trả về một chuỗi sau khi kết hợp các toán hạng, kết hợp chúng với nhau. Ví dụ:

st = 'data.'
print[st * 3]
print[3 * st]

Toán tử

datastructure
Data structure
7 có thể được sử dụng để tạo nhiều bản sao của chuỗi. Khi nó được áp dụng với một số nguyên [n, hãy nói] và một chuỗi, toán tử
datastructure
Data structure
7 trả về một chuỗi bao gồm các bản sao n được nối của chuỗi. Ví dụ:

data.data.data.
data.data.data.

Đầu ra sẽ như sau.

Phạm vi




0

Kiểu dữ liệu

datastructure
Data structure
9 đại diện cho một chuỗi số bất biến. Nó chủ yếu được sử dụng trong các vòng
st = 'data.'
print[st * 3]
print[3 * st]
0 và
st = 'data.'
print[st * 3]
print[3 * st]
1. Nó trả về một chuỗi các số bắt đầu từ một số đã cho đến một số được chỉ định bởi đối số hàm. Nó được sử dụng như trong lệnh sau:




1

Toán tử

datastructure
Data structure
7 có thể được sử dụng để tạo nhiều bản sao của chuỗi. Khi nó được áp dụng với một số nguyên [n, hãy nói] và một chuỗi, toán tử
datastructure
Data structure
7 trả về một chuỗi bao gồm các bản sao n được nối của chuỗi. Ví dụ:




2

Đầu ra sẽ như sau.

Phạm vi

Kiểu dữ liệu

datastructure
Data structure
9 đại diện cho một chuỗi số bất biến. Nó chủ yếu được sử dụng trong các vòng
st = 'data.'
print[st * 3]
print[3 * st]
0 và
st = 'data.'
print[st * 3]
print[3 * st]
1. Nó trả về một chuỗi các số bắt đầu từ một số đã cho đến một số được chỉ định bởi đối số hàm. Nó được sử dụng như trong lệnh sau:




3

Đầu ra của mã trên sẽ như sau.




4

Ở đây, đối số

st = 'data.'
print[st * 3]
print[3 * st]
2 chỉ định bắt đầu trình tự, đối số
st = 'data.'
print[st * 3]
print[3 * st]
3 chỉ định giới hạn cuối của chuỗi và đối số
st = 'data.'
print[st * 3]
print[3 * st]
4 chỉ định cách trình tự sẽ tăng hoặc giảm. Ví dụ này mã Python thể hiện hoạt động của hàm phạm vi:

Danh sách

Danh sách Python được sử dụng để lưu trữ nhiều mục trong một biến duy nhất. Các giá trị trùng lặp được cho phép trong một danh sách và các phần tử có thể thuộc các loại khác nhau: ví dụ, bạn có thể có cả dữ liệu số và chuỗi trong danh sách Python.

Các mục được lưu trữ trong danh sách được đặt trong dấu ngoặc vuông,

st = 'data.'
print[st * 3]
print[3 * st]
5 và được phân tách bằng dấu phẩy, như được hiển thị bên dưới:

Phần tử dữ liệu của danh sách được hiển thị trong Hình 1.4, hiển thị giá trị chỉ mục của từng mục trong danh sách:

Hình 1.4: Các yếu tố dữ liệu của danh sách mẫu

Các đặc điểm của một danh sách trong Python như sau. Đầu tiên, các yếu tố danh sách có thể được truy cập bởi chỉ mục của nó, như trong Hình 1.4. Các yếu tố danh sách được đặt hàng và động. Nó có thể chứa bất kỳ đối tượng tùy ý nào rất mong muốn. Ngoài ra, cấu trúc dữ liệu

st = 'data.'
print[st * 3]
print[3 * st]
6 là có thể thay đổi, trong khi hầu hết các loại dữ liệu khác, chẳng hạn như
st = 'data.'
print[st * 3]
print[3 * st]
7 và
st = 'data.'
print[st * 3]
print[3 * st]
8 là bất biến.

Xem như một danh sách là một kiểu dữ liệu có thể thay đổi, một khi được tạo, các yếu tố danh sách có thể được thêm, xóa, dịch chuyển và di chuyển trong danh sách.

Tất cả các thuộc tính của danh sách được giải thích trong Bảng 1.1 bên dưới để rõ ràng hơn:

Tài sản

Sự mô tả

Thí dụ

Đặt hàng

Các yếu tố danh sách được đặt hàng trong một chuỗi trong đó chúng được chỉ định trong danh sách tại thời điểm xác định chúng. Lệnh này không cần phải thay đổi và vẫn còn bẩm sinh suốt đời.




5



6

Năng động

Danh sách là động. Nó có thể phát triển hoặc thu nhỏ khi cần thiết bằng cách thêm hoặc loại bỏ các mục danh sách.




7



8

Liệt kê các yếu tố có thể là bất kỳ bộ đối tượng tùy ý nào

Danh sách các yếu tố có thể thuộc cùng loại hoặc các loại dữ liệu khác nhau.




9
bool[False]
print[bool[False]]
va1 = 0
print[bool[va1]]
va2 = 11
print[bool[va2]]
va3 = -2.3
print[bool[va3]]
0

Danh sách các yếu tố có thể được truy cập thông qua một chỉ mục

Các phần tử có thể được truy cập bằng cách sử dụng lập chỉ mục dựa trên không trong dấu ngoặc vuông, tương tự như một chuỗi. Truy cập các yếu tố trong danh sách tương tự như chuỗi; Lập chỉ mục danh sách tiêu cực cũng hoạt động trong danh sách. Một chỉ số danh sách tiêu cực được tính từ cuối danh sách.

Danh sách cũng hỗ trợ cắt lát. Nếu

st = 'data.'
print[st * 3]
print[3 * st]
9 là một danh sách, biểu thức
data.data.data.
data.data.data.
0 sẽ trả về phần phần tử từ Index
data.data.data.
data.data.data.
1 cho Index
data.data.data.
data.data.data.
2 [không bao gồm INDEX
data.data.data.
data.data.data.
2]

bool[False]
print[bool[False]]
va1 = 0
print[bool[va1]]
va2 = 11
print[bool[va2]]
va3 = -2.3
print[bool[va3]]
1
bool[False]
print[bool[False]]
va1 = 0
print[bool[va1]]
va2 = 11
print[bool[va2]]
va3 = -2.3
print[bool[va3]]
2
Có thể thay đổi

Giá trị danh sách đơn: Các phần tử trong danh sách có thể được cập nhật thông qua việc lập chỉ mục và gán đơn giản.

Sửa đổi nhiều giá trị danh sách cũng có thể thông qua việc cắt.

bool[False]
print[bool[False]]
va1 = 0
print[bool[va1]]
va2 = 11
print[bool[va2]]
va3 = -2.3
print[bool[va3]]
5
bool[False]
print[bool[False]]
va1 = 0
print[bool[va1]]
va2 = 11
print[bool[va2]]
va3 = -2.3
print[bool[va3]]
6

Bảng 1.1: Đặc điểm của cấu trúc dữ liệu danh sách với các ví dụ

Bây giờ, trong khi thảo luận về các loại dữ liệu danh sách, trước tiên chúng ta nên hiểu các toán tử khác nhau, chẳng hạn như thành viên, danh tính và toán tử logic, trước khi thảo luận về chúng và cách chúng có thể được sử dụng trong các loại dữ liệu danh sách hoặc bất kỳ loại dữ liệu nào khác. Trong phần sắp tới, chúng tôi thảo luận về cách các nhà khai thác hoạt động và được sử dụng trong các loại dữ liệu khác nhau.

Tư cách thành viên, danh tính và hoạt động logic

Python hỗ trợ tư cách thành viên, danh tính và toán tử logic. Một số loại dữ liệu trong Python hỗ trợ họ. Để hiểu cách các nhà khai thác này hoạt động, chúng tôi sẽ thảo luận về từng hoạt động này trong phần này.

Các nhà khai thác thành viên

Các nhà khai thác này được sử dụng để xác nhận tư cách thành viên của một mục. Tư cách thành viên có nghĩa là chúng tôi muốn kiểm tra nếu một giá trị nhất định được lưu trữ trong biến chuỗi, chẳng hạn như một chuỗi, danh sách hoặc tuple. Các nhà khai thác thành viên phải kiểm tra tư cách thành viên trong một chuỗi; đó là, một chuỗi, danh sách hoặc tuple. Hai nhà khai thác thành viên chung được sử dụng trong Python là

data.data.data.
data.data.data.
4 và



02
data.data.data.
data.data.data.
4.

Toán tử

data.data.data.
data.data.data.
4 được sử dụng để kiểm tra xem giá trị có tồn tại theo trình tự hay không. Nó trả về
f = 'data' 
s = 'structure'
print[f + s]
print['Data ' + 'structure']
8 nếu nó tìm thấy biến đã cho trong chuỗi được chỉ định và
f = 'data' 
s = 'structure'
print[f + s]
print['Data ' + 'structure']
9 nếu không:

bool[False]
print[bool[False]]
va1 = 0
print[bool[va1]]
va2 = 11
print[bool[va2]]
va3 = -2.3
print[bool[va3]]
7

Đầu ra sẽ như sau:

bool[False]
print[bool[False]]
va1 = 0
print[bool[va1]]
va2 = 11
print[bool[va2]]
va3 = -2.3
print[bool[va3]]
8

Toán tử ‘

data.data.data.
data.data.data.
5 'trở lại
f = 'data' 
s = 'structure'
print[f + s]
print['Data ' + 'structure']
8 nếu nó không tìm thấy một biến trong chuỗi được chỉ định và
f = 'data' 
s = 'structure'
print[f + s]
print['Data ' + 'structure']
9 nếu nó được tìm thấy:

bool[False]
print[bool[False]]
va1 = 0
print[bool[va1]]
va2 = 11
print[bool[va2]]
va3 = -2.3
print[bool[va3]]
9

Đầu ra sẽ như sau.

False
False
True
True
0

Người vận hành danh tính

Toán tử nhận dạng được sử dụng để so sánh các đối tượng. Các loại toán tử nhận dạng khác nhau là




10 và



10



02, được định nghĩa như sau.

Toán tử




10 được sử dụng để kiểm tra xem hai biến có đề cập đến cùng một đối tượng hay không. Điều này khác với toán tử bình đẳng [



14]. Trong toán tử bình đẳng, chúng tôi kiểm tra xem hai biến có bằng nhau không. Nó trả về
f = 'data' 
s = 'structure'
print[f + s]
print['Data ' + 'structure']
8 nếu cả hai biến bên chỉ vào cùng một đối tượng; Nếu không, thì nó sẽ trả về
f = 'data' 
s = 'structure'
print[f + s]
print['Data ' + 'structure']
9:

False
False
True
True
1

Đầu ra sẽ như sau:

False
False
True
True
2

Toán tử ‘

data.data.data.
data.data.data.
5 'trở lại
f = 'data' 
s = 'structure'
print[f + s]
print['Data ' + 'structure']
8 nếu nó không tìm thấy một biến trong chuỗi được chỉ định và
f = 'data' 
s = 'structure'
print[f + s]
print['Data ' + 'structure']
9 nếu nó được tìm thấy:

False
False
True
True
3

Đầu ra sẽ như sau:

False
False
True
True
4

Toán tử ‘

data.data.data.
data.data.data.
5 'trở lại
f = 'data' 
s = 'structure'
print[f + s]
print['Data ' + 'structure']
8 nếu nó không tìm thấy một biến trong chuỗi được chỉ định và
f = 'data' 
s = 'structure'
print[f + s]
print['Data ' + 'structure']
9 nếu nó được tìm thấy:

Đầu ra sẽ như sau.

Người vận hành danh tính

Toán tử nhận dạng được sử dụng để so sánh các đối tượng. Các loại toán tử nhận dạng khác nhau là




10 và



10



02, được định nghĩa như sau.

False
False
True
True
5

Đầu ra sẽ như sau.

False
False
True
True
6

Người vận hành danh tính

False
False
True
True
7

Đầu ra sẽ như sau.

False
False
True
True
8

Người vận hành danh tính

False
False
True
True
9

Đầu ra sẽ như sau.

str1 = 'Hello how are you'
str2 = "Hello how are you"
str3 = """multiline 
       String"""
print[str1]
print[str2]
print[str3]
0

Người vận hành danh tính

Toán tử nhận dạng được sử dụng để so sánh các đối tượng. Các loại toán tử nhận dạng khác nhau là



10 và



10



02, được định nghĩa như sau.

Toán tử




10 được sử dụng để kiểm tra xem hai biến có đề cập đến cùng một đối tượng hay không. Điều này khác với toán tử bình đẳng [



14]. Trong toán tử bình đẳng, chúng tôi kiểm tra xem hai biến có bằng nhau không. Nó trả về
f = 'data' 
s = 'structure'
print[f + s]
print['Data ' + 'structure']
8 nếu cả hai biến bên chỉ vào cùng một đối tượng; Nếu không, thì nó sẽ trả về
f = 'data' 
s = 'structure'
print[f + s]
print['Data ' + 'structure']
9:

Toán tử




10



02 được sử dụng để kiểm tra xem hai biến có hướng đến cùng một đối tượng hay không.
f = 'data' 
s = 'structure'
print[f + s]
print['Data ' + 'structure']
8 được trả về nếu cả hai biến bên đều trỏ đến các đối tượng khác nhau, nếu không, nó sẽ trả về
f = 'data' 
s = 'structure'
print[f + s]
print['Data ' + 'structure']
9:

str1 = 'Hello how are you'
str2 = "Hello how are you"
str3 = """multiline 
       String"""
print[str1]
print[str2]
print[str3]
1

Phần này là về các nhà khai thác danh tính. Tiếp theo, chúng ta hãy thảo luận về các nhà khai thác logic.

str1 = 'Hello how are you'
str2 = "Hello how are you"
str3 = """multiline 
       String"""
print[str1]
print[str2]
print[str3]
2

Toán tử logic

Các toán tử này được sử dụng để kết hợp các câu lệnh có điều kiện [

f = 'data' 
s = 'structure'
print[f + s]
print['Data ' + 'structure']
8 hoặc
f = 'data' 
s = 'structure'
print[f + s]
print['Data ' + 'structure']
9]. Có ba loại toán tử logic:



23,



24 và



25.

Toán tử logic




23 trả về true nếu cả hai câu lệnh là đúng, nếu không nó sẽ trả về sai. Nó sử dụng cú pháp sau: A và B:

Toán tử logic




24 trả về đúng nếu bất kỳ câu lệnh nào là đúng, nếu không nó sẽ trả về sai. Nó sử dụng cú pháp sau: A hoặc B:

Toán tử logic



25 là toán tử Boolean, có thể được áp dụng cho bất kỳ đối tượng nào. Nó trả về
f = 'data' 
s = 'structure'
print[f + s]
print['Data ' + 'structure']
8 nếu đối tượng/toán hạng là sai, nếu không nó sẽ trả về
f = 'data' 
s = 'structure'
print[f + s]
print['Data ' + 'structure']
9. Ở đây, toán hạng là biểu thức/câu lệnh không được áp dụng. Nó sử dụng cú pháp sau:



02



32:
Trong phần này, chúng tôi đã tìm hiểu về các toán tử khác nhau có sẵn trong Python và cũng thấy cách các nhà khai thác thành viên và nhận dạng có thể được áp dụng cho các loại dữ liệu liệt kê. Trong phần tiếp theo, chúng tôi sẽ tiếp tục thảo luận về một loại dữ liệu chuỗi cuối cùng: Tuples.

Bộ dữ liệu

Tuples được sử dụng để lưu trữ nhiều mục trong một biến duy nhất. Đây là một bộ sưu tập chỉ đọc trong đó dữ liệu được đặt hàng [lập chỉ mục dựa trên 0] và không thể thay đổi/bất biến [các mục không thể được thêm, sửa đổi, loại bỏ]. Các giá trị trùng lặp được cho phép trong một tuple và các phần tử có thể thuộc các loại khác nhau, tương tự như danh sách. Tuples được sử dụng thay vì danh sách khi chúng tôi muốn lưu trữ dữ liệu không nên thay đổi trong chương trình.Tuples được viết bằng dấu ngoặc tròn và các vật phẩm được phân tách bằng dấu phẩy:

Ví dụ:

Tuples hỗ trợ các hoạt động
datastructure
Data structure
6 [nối] và
datastructure
Data structure
7 [lặp lại], tương tự như các chuỗi trong Python. Ngoài ra, một nhà điều hành thành viên và hoạt động lặp lại cũng có sẵn trong một tuple. Các hoạt động khác nhau mà hỗ trợ Tuples được liệt kê trong Bảng 1.2:
Biểu hiện

Kết quả

Sự mô tả
str1 = 'Hello how are you'
str2 = "Hello how are you"
str3 = """multiline 
       String"""
print[str1]
print[str2]
print[str3]
3

Tư cách thành viên

Hello how are you
Hello how are you
multiline 
String
1
Hello how are you
Hello how are you
multiline 
String
2

Lặp đi lặp lại

Bảng 1.2: Ví dụ về các hoạt động tuple

Các bộ dữ liệu trong Python hỗ trợ lập chỉ mục dựa trên không, lập chỉ mục âm và cắt.Để hiểu nó, hãy để Lừa lấy một bộ tuple mẫu, như hình dưới đây:

Hello how are you
Hello how are you
multiline 
String
3

Chúng ta có thể thấy các ví dụ về lập chỉ mục dựa trên không, lập chỉ mục tiêu cực và các hoạt động cắt lát trong Bảng 1.3:

Biểu hiện

Kết quả

Sự mô tả

Hello how are you
Hello how are you
multiline 
String
4
Hello how are you
Hello how are you
multiline 
String
5

Lập chỉ mục dựa trên không có nghĩa là việc lập chỉ mục bắt đầu từ 0 thay vì 1 và do đó trong ví dụ này, chỉ mục đầu tiên đề cập đến thành viên thứ hai của tuple.

Hello how are you
Hello how are you
multiline 
String
6
Hello how are you
Hello how are you
multiline 
String
5

Lập chỉ mục dựa trên không có nghĩa là việc lập chỉ mục bắt đầu từ 0 thay vì 1 và do đó trong ví dụ này, chỉ mục đầu tiên đề cập đến thành viên thứ hai của tuple.

Hello how are you
Hello how are you
multiline 
String
6
Tiêu cực: Đếm từ phía bên phải.

Hello how are you
Hello how are you
multiline 
String
8

Hello how are you
Hello how are you
multiline 
String
9

Bài Viết Liên Quan

Chủ Đề