Nhận tất cả các lớp con python

Tại một số thời điểm trong cuộc phiêu lưu mã hóa Python của bạn, bạn có thể cần tạo các lớp giống như danh sách tùy chỉnh với hành vi được sửa đổi, chức năng mới hoặc cả hai. Để làm điều này trong Python, bạn có thể kế thừa từ một lớp cơ sở trừu tượng, phân lớp trực tiếp lớp

>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
3 tích hợp sẵn hoặc kế thừa từ
>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
4, nằm trong mô-đun
>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
5

Trong hướng dẫn này, bạn sẽ học cách

  • Tạo các lớp giống như danh sách tùy chỉnh bằng cách kế thừa từ lớp
    >>> from string_list import StringList
    
    >>> data = StringList[[1, 2, 2, 4, 5]]
    >>> data
    ['1', '2', '2', '4', '5']
    
    >>> data.append[6]
    >>> data
    ['1', '2', '2', '4', '5', '6']
    
    >>> data.insert[0, 0]
    >>> data
    ['0', '1', '2', '2', '4', '5', '6']
    
    >>> data.extend[[7, 8, 9]]
    >>> data
    ['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']
    
    >>> data[3] = 3
    >>> data
    ['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
    
    3 tích hợp
  • Xây dựng các lớp giống như danh sách tùy chỉnh bằng cách phân lớp
    >>> from string_list import StringList
    
    >>> data = StringList[[1, 2, 2, 4, 5]]
    >>> data
    ['1', '2', '2', '4', '5']
    
    >>> data.append[6]
    >>> data
    ['1', '2', '2', '4', '5', '6']
    
    >>> data.insert[0, 0]
    >>> data
    ['0', '1', '2', '2', '4', '5', '6']
    
    >>> data.extend[[7, 8, 9]]
    >>> data
    ['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']
    
    >>> data[3] = 3
    >>> data
    ['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
    
    4 từ mô-đun
    >>> from string_list import StringList
    
    >>> data = StringList[[1, 2, 2, 4, 5]]
    >>> data
    ['1', '2', '2', '4', '5']
    
    >>> data.append[6]
    >>> data
    ['1', '2', '2', '4', '5', '6']
    
    >>> data.insert[0, 0]
    >>> data
    ['0', '1', '2', '2', '4', '5', '6']
    
    >>> data.extend[[7, 8, 9]]
    >>> data
    ['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']
    
    >>> data[3] = 3
    >>> data
    ['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
    
    5

Bạn cũng sẽ viết một số ví dụ giúp bạn quyết định lớp cha nào,

>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
3 hoặc
>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
4, sẽ sử dụng khi tạo các lớp danh sách tùy chỉnh của bạn

Để tận dụng tối đa hướng dẫn này, bạn nên làm quen với lớp

>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
3 tích hợp sẵn của Python và các tính năng tiêu chuẩn của nó. Bạn cũng sẽ cần biết kiến ​​thức cơ bản về lập trình hướng đối tượng và hiểu cách hoạt động của tính kế thừa trong Python

Tải xuống miễn phí. Nhấp vào đây để tải xuống mã nguồn mà bạn sẽ sử dụng để tạo các lớp giống như danh sách tùy chỉnh

Tạo các lớp giống như danh sách trong Python

Lớp

>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
3 tích hợp là một kiểu dữ liệu cơ bản trong Python. Danh sách hữu ích trong nhiều tình huống và có rất nhiều trường hợp sử dụng thực tế. Trong một số trường hợp sử dụng này, chức năng tiêu chuẩn của Python
>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
3 có thể không đủ và bạn có thể cần tạo các lớp giống như danh sách tùy chỉnh để giải quyết vấn đề hiện tại

Thông thường, bạn sẽ tìm thấy ít nhất hai lý do để tạo các lớp giống như danh sách tùy chỉnh

  1. Mở rộng danh sách thông thường bằng cách thêm chức năng mới
  2. Sửa đổi chức năng của danh sách tiêu chuẩn

Bạn cũng có thể đối mặt với các tình huống mà bạn cần mở rộng và sửa đổi chức năng tiêu chuẩn của danh sách

Tùy thuộc vào nhu cầu cụ thể và trình độ kỹ năng của bạn, bạn có thể sử dụng một số chiến lược để tạo các lớp giống như danh sách tùy chỉnh của riêng mình. Bạn có thể

  • Kế thừa từ một lớp cơ sở trừu tượng thích hợp, chẳng hạn như
    >>> from string_list import StringList
    
    >>> data = StringList[[1, 2, 2, 4, 5]]
    >>> data
    ['1', '2', '2', '4', '5']
    
    >>> data.append[6]
    >>> data
    ['1', '2', '2', '4', '5', '6']
    
    >>> data.insert[0, 0]
    >>> data
    ['0', '1', '2', '2', '4', '5', '6']
    
    >>> data.extend[[7, 8, 9]]
    >>> data
    ['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']
    
    >>> data[3] = 3
    >>> data
    ['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
    
    14
  • Kế thừa trực tiếp từ lớp
    >>> from string_list import StringList
    
    >>> data = StringList[[1, 2, 2, 4, 5]]
    >>> data
    ['1', '2', '2', '4', '5']
    
    >>> data.append[6]
    >>> data
    ['1', '2', '2', '4', '5', '6']
    
    >>> data.insert[0, 0]
    >>> data
    ['0', '1', '2', '2', '4', '5', '6']
    
    >>> data.extend[[7, 8, 9]]
    >>> data
    ['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']
    
    >>> data[3] = 3
    >>> data
    ['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
    
    3 tích hợp sẵn của Python
  • Phân lớp
    >>> from string_list import StringList
    
    >>> data = StringList[[1, 2, 2, 4, 5]]
    >>> data
    ['1', '2', '2', '4', '5']
    
    >>> data.append[6]
    >>> data
    ['1', '2', '2', '4', '5', '6']
    
    >>> data.insert[0, 0]
    >>> data
    ['0', '1', '2', '2', '4', '5', '6']
    
    >>> data.extend[[7, 8, 9]]
    >>> data
    ['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']
    
    >>> data[3] = 3
    >>> data
    ['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
    
    4 từ
    >>> from string_list import StringList
    
    >>> data = StringList[[1, 2, 2, 4, 5]]
    >>> data
    ['1', '2', '2', '4', '5']
    
    >>> data.append[6]
    >>> data
    ['1', '2', '2', '4', '5', '6']
    
    >>> data.insert[0, 0]
    >>> data
    ['0', '1', '2', '2', '4', '5', '6']
    
    >>> data.extend[[7, 8, 9]]
    >>> data
    ['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']
    
    >>> data[3] = 3
    >>> data
    ['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
    
    5

Ghi chú. Trong lập trình hướng đối tượng, thông thường người ta sử dụng các động từ inherit và subclass thay thế cho nhau

Có một số cân nhắc khi bạn chọn chiến lược phù hợp để sử dụng. Tiếp tục đọc để biết thêm chi tiết

Loại bỏ các quảng cáo

Xây dựng một lớp giống như danh sách từ một lớp cơ sở trừu tượng

Bạn có thể tạo các lớp dạng danh sách của riêng mình bằng cách kế thừa từ một lớp cơ sở trừu tượng thích hợp [ABC], chẳng hạn như

>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
14. ABC này cung cấp các triển khai chung của hầu hết các phương thức
>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
3 ngoại trừ
>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
0,
>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
1,
>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
2,
>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
3 và
>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
4. Vì vậy, khi kế thừa từ lớp này, bạn sẽ phải tự thực hiện các phương thức này

Viết triển khai của riêng bạn cho tất cả các phương thức đặc biệt này là một khối lượng công việc khá lớn. Nó dễ bị lỗi và yêu cầu kiến ​​thức nâng cao về Python và mô hình dữ liệu của nó. Nó cũng có thể ngụ ý các vấn đề về hiệu suất vì bạn sẽ viết các phương thức bằng Python thuần túy

Ngoài ra, giả sử bạn cần tùy chỉnh chức năng của bất kỳ phương pháp danh sách tiêu chuẩn nào khác, như

>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
5 hoặc
>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
4. Trong trường hợp đó, bạn sẽ phải ghi đè cách triển khai mặc định và cung cấp cách triển khai phù hợp đáp ứng nhu cầu của bạn

Ưu điểm chính của chiến lược tạo các lớp giống như danh sách này là lớp ABC gốc sẽ cảnh báo bạn nếu bạn bỏ lỡ bất kỳ phương thức cần thiết nào trong triển khai tùy chỉnh của mình

Nói chung, bạn chỉ nên áp dụng chiến lược này nếu bạn cần một lớp giống như danh sách về cơ bản khác với lớp

>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
3 tích hợp

Trong hướng dẫn này, bạn sẽ tập trung vào việc tạo các lớp dạng danh sách bằng cách kế thừa từ lớp

>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
3 tích hợp sẵn và lớp
>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
4 từ mô-đun
>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
5 của thư viện tiêu chuẩn. Những chiến lược này dường như là những chiến lược nhanh nhất và thiết thực nhất

Kế thừa từ lớp
>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
3 tích hợp sẵn của Python

Trong một thời gian dài, không thể kế thừa trực tiếp từ các kiểu Python được triển khai trong C. Trăn 2. 2 đã khắc phục sự cố này. Bây giờ bạn có thể phân lớp các loại dựng sẵn, bao gồm

>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
3. Sự thay đổi này đã mang lại một số lợi thế kỹ thuật cho các lớp con bởi vì bây giờ chúng

  • Sẽ hoạt động ở mọi nơi yêu cầu loại tích hợp ban đầu
  • Có thể định nghĩa các phương thức thể hiện, tĩnh và lớp mới
  • Có thể lưu trữ các thuộc tính thể hiện của chúng trong thuộc tính lớp
    >>> from string_list import StringList
    
    >>> data = StringList[[1, 2, 2, 4, 5]]
    >>> data
    ['1', '2', '2', '4', '5']
    
    >>> data.append[6]
    >>> data
    ['1', '2', '2', '4', '5', '6']
    
    >>> data.insert[0, 0]
    >>> data
    ['0', '1', '2', '2', '4', '5', '6']
    
    >>> data.extend[[7, 8, 9]]
    >>> data
    ['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']
    
    >>> data[3] = 3
    >>> data
    ['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
    
    03, về cơ bản thay thế thuộc tính
    >>> from string_list import StringList
    
    >>> data = StringList[[1, 2, 2, 4, 5]]
    >>> data
    ['1', '2', '2', '4', '5']
    
    >>> data.append[6]
    >>> data
    ['1', '2', '2', '4', '5', '6']
    
    >>> data.insert[0, 0]
    >>> data
    ['0', '1', '2', '2', '4', '5', '6']
    
    >>> data.extend[[7, 8, 9]]
    >>> data
    ['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']
    
    >>> data[3] = 3
    >>> data
    ['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
    
    04

Mục đầu tiên trong danh sách này có thể là một yêu cầu đối với mã C mong đợi một lớp tích hợp Python. Mục thứ hai cho phép bạn thêm chức năng mới vào đầu hành vi danh sách tiêu chuẩn. Cuối cùng, mục thứ ba sẽ cho phép bạn hạn chế các thuộc tính của một lớp con chỉ với những thuộc tính được xác định trước trong

>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
03

Để bắt đầu mọi thứ và bắt đầu tạo các lớp giống như danh sách tùy chỉnh, hãy nói rằng bạn cần một danh sách tự động lưu trữ tất cả các mục của nó dưới dạng chuỗi. Giả sử rằng danh sách tùy chỉnh của bạn sẽ chỉ lưu trữ các số dưới dạng chuỗi, bạn có thể tạo lớp con sau của

>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
3

>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
4

Lớp

>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
07 của bạn trực tiếp phân lớp
>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
3, có nghĩa là nó sẽ kế thừa tất cả các chức năng của một lớp Python tiêu chuẩn
>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
3. Bởi vì bạn muốn danh sách của mình lưu trữ các mục dưới dạng chuỗi, bạn cần sửa đổi tất cả các phương pháp thêm hoặc sửa đổi các mục trong danh sách cơ bản. Những phương pháp đó bao gồm những điều sau đây

  • >>> from string_list import StringList
    
    >>> data = StringList[[1, 2, 2, 4, 5]]
    >>> data
    ['1', '2', '2', '4', '5']
    
    >>> data.append[6]
    >>> data
    ['1', '2', '2', '4', '5', '6']
    
    >>> data.insert[0, 0]
    >>> data
    ['0', '1', '2', '2', '4', '5', '6']
    
    >>> data.extend[[7, 8, 9]]
    >>> data
    ['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']
    
    >>> data[3] = 3
    >>> data
    ['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
    
    80 khởi tạo tất cả các phiên bản mới của lớp
  • >>> from string_list import StringList
    
    >>> data = StringList[[1, 2, 2, 4, 5]]
    >>> data
    ['1', '2', '2', '4', '5']
    
    >>> data.append[6]
    >>> data
    ['1', '2', '2', '4', '5', '6']
    
    >>> data.insert[0, 0]
    >>> data
    ['0', '1', '2', '2', '4', '5', '6']
    
    >>> data.extend[[7, 8, 9]]
    >>> data
    ['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']
    
    >>> data[3] = 3
    >>> data
    ['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
    
    1 cho phép bạn gán giá trị mới cho một mục hiện có bằng cách sử dụng chỉ mục của mục đó, như trong
    >>> from string_list import StringList
    
    >>> data = StringList[[1, 2, 2, 4, 5]]
    >>> data
    ['1', '2', '2', '4', '5']
    
    >>> data.append[6]
    >>> data
    ['1', '2', '2', '4', '5', '6']
    
    >>> data.insert[0, 0]
    >>> data
    ['0', '1', '2', '2', '4', '5', '6']
    
    >>> data.extend[[7, 8, 9]]
    >>> data
    ['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']
    
    >>> data[3] = 3
    >>> data
    ['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
    
    82
  • >>> from string_list import StringList
    
    >>> data = StringList[[1, 2, 2, 4, 5]]
    >>> data
    ['1', '2', '2', '4', '5']
    
    >>> data.append[6]
    >>> data
    ['1', '2', '2', '4', '5', '6']
    
    >>> data.insert[0, 0]
    >>> data
    ['0', '1', '2', '2', '4', '5', '6']
    
    >>> data.extend[[7, 8, 9]]
    >>> data
    ['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']
    
    >>> data[3] = 3
    >>> data
    ['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
    
    4 cho phép bạn chèn một mục mới vào một vị trí nhất định trong danh sách cơ bản bằng cách sử dụng chỉ mục của mục đó
  • >>> from string_list import StringList
    
    >>> data = StringList[[1, 2, 2, 4, 5]]
    >>> data
    ['1', '2', '2', '4', '5']
    
    >>> data.append[6]
    >>> data
    ['1', '2', '2', '4', '5', '6']
    
    >>> data.insert[0, 0]
    >>> data
    ['0', '1', '2', '2', '4', '5', '6']
    
    >>> data.extend[[7, 8, 9]]
    >>> data
    ['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']
    
    >>> data[3] = 3
    >>> data
    ['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
    
    5 thêm một mục mới vào cuối danh sách cơ bản
  • >>> from string_list import StringList
    
    >>> data = StringList[[1, 2, 2, 4, 5]]
    >>> data
    ['1', '2', '2', '4', '5']
    
    >>> data.append[6]
    >>> data
    ['1', '2', '2', '4', '5', '6']
    
    >>> data.insert[0, 0]
    >>> data
    ['0', '1', '2', '2', '4', '5', '6']
    
    >>> data.extend[[7, 8, 9]]
    >>> data
    ['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']
    
    >>> data[3] = 3
    >>> data
    ['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
    
    85 thêm một loạt mục vào cuối danh sách

Các phương thức khác mà lớp

>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
07 của bạn kế thừa từ
>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
3 chỉ hoạt động tốt vì chúng không thêm hoặc cập nhật các mục trong danh sách tùy chỉnh của bạn

Ghi chú. Nếu bạn muốn lớp

>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
07 của mình hỗ trợ nối với toán tử cộng [
>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
89], thì bạn cũng cần triển khai các phương thức đặc biệt khác, chẳng hạn như
>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
80,
>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
81 và
>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
82

Để sử dụng

>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
07 trong mã của bạn, bạn có thể làm điều gì đó như thế này

>>>

>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']

Lớp học của bạn hoạt động như mong đợi. Nó chuyển đổi tất cả các giá trị đầu vào thành chuỗi một cách nhanh chóng. Điều đó thật tuyệt, phải không?

Khi bạn nối thêm, chèn, mở rộng hoặc gán giá trị mới cho các thể hiện của lớp, các phương thức hỗ trợ từng thao tác sẽ xử lý quá trình chuyển đổi chuỗi. Bằng cách này, danh sách của bạn sẽ luôn lưu trữ các mục của nó dưới dạng đối tượng chuỗi

Loại bỏ các quảng cáo

Phân lớp
>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
4 Từ
>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
5

Một cách khác để tạo một lớp giống như danh sách tùy chỉnh là sử dụng lớp

>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
4 từ mô-đun
>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
5. Lớp này là một trình bao bọc xung quanh loại
>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
3 tích hợp. Nó được thiết kế để tạo các đối tượng giống như danh sách khi không thể kế thừa trực tiếp từ lớp
>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
3 tích hợp

Mặc dù nhu cầu về lớp này đã được thay thế một phần bằng khả năng phân lớp trực tiếp lớp

>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
3 tích hợp sẵn, nhưng
>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
4 vẫn có sẵn trong thư viện chuẩn, cả về sự tiện lợi và khả năng tương thích ngược

Tính năng phân biệt của

>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
4 là nó cho phép bạn truy cập vào thuộc tính
>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
34 của nó, thuộc tính này có thể tạo thuận lợi cho việc tạo danh sách tùy chỉnh của bạn vì bạn không cần phải sử dụng
>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
35 mọi lúc. Thuộc tính
>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
34 giữ một Python
>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
3 thông thường, theo mặc định là trống

Đây là cách bạn có thể triển khai lại lớp

>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
07 của mình bằng cách kế thừa từ
>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
4

>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
1

Trong ví dụ này, việc có quyền truy cập vào thuộc tính

>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
34 cho phép bạn viết mã lớp theo cách đơn giản hơn bằng cách sử dụng ủy quyền, điều đó có nghĩa là danh sách trong
>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
34 đảm nhiệm việc xử lý tất cả các yêu cầu

Bây giờ bạn gần như không phải sử dụng các công cụ nâng cao như

>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
35. Bạn chỉ cần gọi hàm này trong trình khởi tạo lớp để tránh sự cố trong các tình huống kế thừa tiếp theo. Trong các phương thức còn lại, bạn chỉ cần tận dụng lợi thế của
>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
34, chứa danh sách Python thông thường. Làm việc với danh sách là một kỹ năng mà bạn có thể đã có

Ghi chú. Trong ví dụ trên, bạn sẽ ổn nếu bạn sử dụng lại triển khai nội bộ ban đầu của

>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
07 từ phần trước nhưng thay đổi lớp cha từ
>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
3 thành
>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
4. Mã của bạn sẽ hoạt động như cũ. Tuy nhiên, sử dụng
>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
34 có thể tạo thuận lợi cho quá trình mã hóa các lớp giống như danh sách

Phiên bản mới này hoạt động giống như phiên bản đầu tiên của

>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
07. Hãy tiếp tục và chạy đoạn mã sau để dùng thử

>>>

>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']

Hiển thị

>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
34 là tính năng phù hợp nhất của
>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
4, như bạn đã biết. Thuộc tính này có thể đơn giản hóa các lớp của bạn vì bạn không cần phải sử dụng
>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
35 mọi lúc. Bạn chỉ có thể tận dụng lợi thế của
>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
34 và sử dụng giao diện
>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
3 quen thuộc để làm việc với thuộc tính này

Mã hóa các lớp giống như danh sách. Ví dụ thực tế

Bạn đã biết cách sử dụng

>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
3 và
>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
4 khi bạn cần tạo các lớp giống như danh sách tùy chỉnh để thêm hoặc sửa đổi chức năng tiêu chuẩn của
>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
3

Phải thừa nhận rằng, khi bạn nghĩ đến việc tạo một lớp giống như danh sách, việc kế thừa từ

>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
3 có vẻ tự nhiên hơn là kế thừa từ
>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
4 vì các nhà phát triển Python biết về
>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
3. Họ có thể không biết về sự tồn tại của
>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
4

Bạn cũng biết rằng sự khác biệt chính giữa hai lớp này là khi bạn kế thừa từ

>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
4, bạn có quyền truy cập vào thuộc tính
>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
34, đây là một danh sách thông thường mà bạn có thể thao tác thông qua giao diện
>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
3 tiêu chuẩn. Ngược lại, kế thừa từ
>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
3 yêu cầu kiến ​​thức nâng cao về mô hình dữ liệu của Python, bao gồm các công cụ như hàm
>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
35 tích hợp và một số phương thức đặc biệt

Trong các phần sau, bạn sẽ viết mã một số ví dụ thực tế bằng cách sử dụng cả hai lớp. Sau khi viết những ví dụ này, bạn sẽ chuẩn bị tốt hơn để chọn công cụ phù hợp để sử dụng khi bạn cần xác định các lớp giống như danh sách tùy chỉnh trong mã của mình

Danh sách chỉ chấp nhận dữ liệu số

Như một ví dụ đầu tiên về việc tạo một lớp giống như danh sách với hành vi tùy chỉnh, giả sử rằng bạn cần một danh sách chỉ chấp nhận dữ liệu số. Danh sách của bạn chỉ nên lưu trữ số nguyên, số thực và số phức. Nếu bạn cố lưu trữ giá trị của bất kỳ loại dữ liệu nào khác, chẳng hạn như chuỗi, thì danh sách của bạn sẽ tăng

>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
06

Đây là triển khai của lớp

>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
07 với chức năng mong muốn

>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
0

Trong ví dụ này, lớp

>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
07 của bạn kế thừa trực tiếp từ lớp
>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
3. Điều này có nghĩa là lớp của bạn chia sẻ tất cả chức năng cốt lõi với lớp
>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
3 được tích hợp sẵn. Bạn có thể lặp lại các phiên bản của
>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
07, truy cập và cập nhật các mục của nó bằng chỉ mục của chúng, gọi các phương thức chung của
>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
3, v.v.

Bây giờ, để đảm bảo rằng mọi mục đầu vào đều là một số, bạn cần xác thực từng mục trong tất cả các phương thức hỗ trợ thao tác thêm mục mới hoặc cập nhật mục hiện có trong danh sách. Các phương thức bắt buộc giống như trong ví dụ

>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
07 trong phần Kế thừa từ lớp
>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
3 tích hợp sẵn của Python

Để xác thực dữ liệu đầu vào, bạn sử dụng phương thức trợ giúp có tên là

>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
15. Phương pháp này sử dụng hàm
>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
16 tích hợp để kiểm tra xem giá trị đầu vào hiện tại có phải là phiên bản của
>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
17,
>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
18 hoặc
>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
19 hay không, là các lớp tích hợp đại diện cho các giá trị số trong Python

Ghi chú. Một cách tổng quát hơn để kiểm tra xem một giá trị có phải là số trong Python hay không là sử dụng

>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
20 từ mô-đun
>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
21. Điều này cũng sẽ cho phép bạn xác thực các đối tượng
>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
22 và
>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
23

Nếu giá trị đầu vào là một thể hiện của kiểu dữ liệu số, thì hàm trợ giúp của bạn sẽ trả về chính giá trị đó. Nếu không, hàm sẽ đưa ra một ngoại lệ

>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
06 với thông báo lỗi thích hợp

Để sử dụng

>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
07, hãy quay lại phiên tương tác của bạn và chạy đoạn mã sau

>>>

>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
8

Trong các ví dụ này, các thao tác thêm hoặc sửa đổi dữ liệu trong

>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
21 sẽ tự động xác thực đầu vào để đảm bảo rằng chỉ các giá trị số được chấp nhận. Nếu bạn thêm một giá trị chuỗi vào
>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
21, thì bạn sẽ nhận được một
>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
06

Một triển khai thay thế của

>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
07 bằng cách sử dụng
>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
4 có thể giống như thế này

>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
8

Trong triển khai mới này của

>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
07, bạn kế thừa từ
>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
4. Một lần nữa, lớp học của bạn sẽ chia sẻ tất cả các chức năng cốt lõi với một
>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
3 thông thường

Trong ví dụ này, thay vì sử dụng

>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
35 mọi lúc để truy cập các phương thức và thuộc tính trong lớp cha, bạn sử dụng trực tiếp thuộc tính
>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
34. Ở một mức độ nào đó, việc sử dụng
>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
34 được cho là đơn giản hóa mã của bạn so với việc sử dụng
>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
35 và các công cụ nâng cao khác như các phương thức đặc biệt

Lưu ý rằng bạn chỉ sử dụng

>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
35 trong trình khởi tạo lớp,
>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
39. Đây là cách thực hành tốt nhất khi bạn làm việc với tính kế thừa trong Python. Nó cho phép bạn khởi tạo đúng các thuộc tính trong lớp cha mà không làm hỏng mọi thứ

Loại bỏ các quảng cáo

Danh sách có chức năng bổ sung

Bây giờ, giả sử rằng bạn cần một lớp giống như danh sách với tất cả các chức năng tiêu chuẩn của một

>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
3 Python thông thường. Lớp của bạn cũng nên cung cấp một số chức năng bổ sung mượn từ kiểu dữ liệu Array của JavaScript. Ví dụ: bạn sẽ cần có các phương thức như sau

  • >>> from string_list import StringList
    
    >>> data = StringList[[1, 2, 2, 4, 5]]
    >>> data
    ['1', '2', '2', '4', '5']
    
    >>> data.append[6]
    >>> data
    ['1', '2', '2', '4', '5', '6']
    
    >>> data.insert[0, 0]
    >>> data
    ['0', '1', '2', '2', '4', '5', '6']
    
    >>> data.extend[[7, 8, 9]]
    >>> data
    ['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']
    
    >>> data[3] = 3
    >>> data
    ['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
    
    41 nối tất cả các mục của danh sách trong một chuỗi
  • >>> from string_list import StringList
    
    >>> data = StringList[[1, 2, 2, 4, 5]]
    >>> data
    ['1', '2', '2', '4', '5']
    
    >>> data.append[6]
    >>> data
    ['1', '2', '2', '4', '5', '6']
    
    >>> data.insert[0, 0]
    >>> data
    ['0', '1', '2', '2', '4', '5', '6']
    
    >>> data.extend[[7, 8, 9]]
    >>> data
    ['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']
    
    >>> data[3] = 3
    >>> data
    ['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
    
    42 mang lại các mục mới là kết quả của việc áp dụng một
    >>> from string_list import StringList
    
    >>> data = StringList[[1, 2, 2, 4, 5]]
    >>> data
    ['1', '2', '2', '4', '5']
    
    >>> data.append[6]
    >>> data
    ['1', '2', '2', '4', '5', '6']
    
    >>> data.insert[0, 0]
    >>> data
    ['0', '1', '2', '2', '4', '5', '6']
    
    >>> data.extend[[7, 8, 9]]
    >>> data
    ['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']
    
    >>> data[3] = 3
    >>> data
    ['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
    
    43 có thể gọi được cho từng mục trong danh sách cơ bản
  • >>> from string_list import StringList
    
    >>> data = StringList[[1, 2, 2, 4, 5]]
    >>> data
    ['1', '2', '2', '4', '5']
    
    >>> data.append[6]
    >>> data
    ['1', '2', '2', '4', '5', '6']
    
    >>> data.insert[0, 0]
    >>> data
    ['0', '1', '2', '2', '4', '5', '6']
    
    >>> data.extend[[7, 8, 9]]
    >>> data
    ['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']
    
    >>> data[3] = 3
    >>> data
    ['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
    
    44 mang lại tất cả các mục trả về
    >>> from string_list import StringList
    
    >>> data = StringList[[1, 2, 2, 4, 5]]
    >>> data
    ['1', '2', '2', '4', '5']
    
    >>> data.append[6]
    >>> data
    ['1', '2', '2', '4', '5', '6']
    
    >>> data.insert[0, 0]
    >>> data
    ['0', '1', '2', '2', '4', '5', '6']
    
    >>> data.extend[[7, 8, 9]]
    >>> data
    ['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']
    
    >>> data[3] = 3
    >>> data
    ['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
    
    45 khi gọi
    >>> from string_list import StringList
    
    >>> data = StringList[[1, 2, 2, 4, 5]]
    >>> data
    ['1', '2', '2', '4', '5']
    
    >>> data.append[6]
    >>> data
    ['1', '2', '2', '4', '5', '6']
    
    >>> data.insert[0, 0]
    >>> data
    ['0', '1', '2', '2', '4', '5', '6']
    
    >>> data.extend[[7, 8, 9]]
    >>> data
    ['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']
    
    >>> data[3] = 3
    >>> data
    ['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
    
    46 trên chúng
  • >>> from string_list import StringList
    
    >>> data = StringList[[1, 2, 2, 4, 5]]
    >>> data
    ['1', '2', '2', '4', '5']
    
    >>> data.append[6]
    >>> data
    ['1', '2', '2', '4', '5', '6']
    
    >>> data.insert[0, 0]
    >>> data
    ['0', '1', '2', '2', '4', '5', '6']
    
    >>> data.extend[[7, 8, 9]]
    >>> data
    ['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']
    
    >>> data[3] = 3
    >>> data
    ['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
    
    47 gọi
    >>> from string_list import StringList
    
    >>> data = StringList[[1, 2, 2, 4, 5]]
    >>> data
    ['1', '2', '2', '4', '5']
    
    >>> data.append[6]
    >>> data
    ['1', '2', '2', '4', '5', '6']
    
    >>> data.insert[0, 0]
    >>> data
    ['0', '1', '2', '2', '4', '5', '6']
    
    >>> data.extend[[7, 8, 9]]
    >>> data
    ['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']
    
    >>> data[3] = 3
    >>> data
    ['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
    
    48 trên mọi mục trong danh sách cơ bản để tạo ra một số tác dụng phụ

Đây là một lớp triển khai tất cả các tính năng mới này bằng cách phân lớp

>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
3

>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
3

Phương thức

>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
41 trong
>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
51 lấy một ký tự phân cách làm đối số và sử dụng nó để nối các mục trong đối tượng danh sách hiện tại, được đại diện bởi
>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
52. Để làm điều này, bạn sử dụng
>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
53 với biểu thức trình tạo làm đối số. Biểu thức trình tạo này chuyển đổi mọi mục thành đối tượng chuỗi bằng cách sử dụng
>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
54

Phương thức

>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
55 trả về một đối tượng
>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
51. Để xây dựng đối tượng này, bạn sử dụng biểu thức trình tạo áp dụng
>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
43 cho mọi mục trong đối tượng hiện tại,
>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
52. Lưu ý rằng hành động có thể là bất kỳ khả năng gọi nào lấy một mục làm đối số và trả về một mục đã chuyển đổi

Phương thức

>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
59 cũng trả về một đối tượng
>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
51. Để xây dựng đối tượng này, bạn sử dụng biểu thức trình tạo tạo ra các mục mà
>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
46 trả về
>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
45. Trong trường hợp này,
>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
46 phải là hàm có giá trị Boolean trả về
>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
45 hoặc
>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
65 tùy thuộc vào các điều kiện nhất định được áp dụng cho mục đầu vào

Cuối cùng, phương thức

>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
66 gọi
>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
48 trên mọi mục trong danh sách cơ bản. Cuộc gọi này không trả lại bất cứ điều gì nhưng gây ra một số tác dụng phụ, như bạn sẽ thấy bên dưới

Để sử dụng lớp này trong mã của bạn, bạn có thể làm như sau

>>>

>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
63

Trong những ví dụ này, trước tiên bạn gọi

>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
41 trên
>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
69. Phương thức này trả về một chuỗi duy nhất là kết quả của việc nối tất cả các mục trong danh sách bên dưới

Cuộc gọi đến

>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
55 trả về một đối tượng
>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
51 chứa các từ viết hoa. Sự chuyển đổi này là kết quả của việc áp dụng
>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
72 cho tất cả các mục trong
>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
69. Phương thức này hoạt động khá giống với hàm
>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
74 tích hợp. Sự khác biệt chính là thay vì trả về một danh sách, hàm
>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
74 tích hợp trả về một trình vòng lặp mang lại các mục được chuyển đổi một cách lười biếng

Phương thức

>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
59 lấy hàm
>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
77 làm đối số. Trong ví dụ, hàm
>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
77 này sử dụng
>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
79 để chọn những từ bắt đầu bằng tiền tố
>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
80. Lưu ý rằng phương thức này hoạt động tương tự như hàm
>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
81 tích hợp sẵn, trả về một trình vòng lặp thay vì một danh sách

Cuối cùng, cuộc gọi đến

>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
66 trên
>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
69 in mọi từ lên màn hình như một tác dụng phụ của việc gọi
>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
84 trên mỗi mục trong danh sách cơ bản. Lưu ý rằng hàm được truyền tới
>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
66 sẽ lấy một mục làm đối số nhưng không được trả về bất kỳ giá trị hiệu quả nào

Bạn cũng có thể triển khai

>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
51 bằng cách kế thừa từ
>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
4 thay vì từ
>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
3. Trong trường hợp này, bạn không cần thay đổi cài đặt nội bộ, chỉ thay đổi lớp cơ sở

>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
85

Lưu ý rằng trong ví dụ này, bạn vừa thay đổi lớp cha. Không cần sử dụng trực tiếp

>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
34. Tuy nhiên, bạn có thể sử dụng nó nếu bạn muốn. Ưu điểm là bạn sẽ cung cấp thêm ngữ cảnh cho các nhà phát triển khác đọc mã của bạn

>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
0

Trong phiên bản mới này của

>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
90, thay đổi duy nhất là bạn đã thay thế
>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
52 bằng
>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
92 để làm rõ rằng bạn đang làm việc với một phân lớp
>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
4. Thay đổi này làm cho mã của bạn rõ ràng hơn

Loại bỏ các quảng cáo

Xem xét hiệu suất.
>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
3 đấu với
>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
4

Cho đến thời điểm này, bạn đã học cách tạo các lớp giống như danh sách của riêng mình bằng cách kế thừa từ

>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
3 hoặc
>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
4. Bạn cũng biết rằng sự khác biệt duy nhất có thể nhìn thấy giữa hai lớp này là
>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
4 hiển thị thuộc tính
>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
34, điều này có thể tạo thuận lợi cho quá trình viết mã

Trong phần này, bạn sẽ xem xét một khía cạnh có thể quan trọng khi quyết định nên sử dụng

>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
3 hay
>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
4 để tạo các lớp giống như danh sách tùy chỉnh của bạn. Đó là hiệu suất

Để đánh giá xem có sự khác biệt về hiệu suất giữa các lớp kế thừa từ

>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
3 so với
>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
4 hay không, bạn sẽ sử dụng lớp
>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
07. Hãy tiếp tục và tạo một tệp Python mới chứa đoạn mã sau

>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
1

Hai lớp này hoạt động như nhau. Tuy nhiên, chúng khác nhau ở bên trong.

>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
105 kế thừa từ
>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
3 và việc triển khai của nó dựa trên
>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
35. Ngược lại,
>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
108 kế thừa từ
>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
4 và việc triển khai của nó dựa trên thuộc tính nội bộ
>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
34

Để so sánh hiệu suất của hai lớp này, bạn nên bắt đầu bằng cách tính thời gian cho các thao tác danh sách tiêu chuẩn, chẳng hạn như khởi tạo. Tuy nhiên, trong các ví dụ này, cả hai trình khởi tạo đều tương đương nhau, vì vậy chúng phải hoạt động giống nhau

Đo thời gian thực hiện các chức năng mới cũng hữu ích. Ví dụ: bạn có thể kiểm tra thời gian thực hiện của

>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
85. Hãy tiếp tục và chạy đoạn mã sau

>>>

>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
2

Trong bài kiểm tra hiệu năng này, bạn sử dụng mô-đun

>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
112 cùng với hàm
>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
113 để đo thời gian thực thi của một đoạn mã. Mã mục tiêu bao gồm các lệnh gọi tới
>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
85 trên các phiên bản của
>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
105 và
>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
108 sử dụng một số dữ liệu mẫu

Sự khác biệt về hiệu suất giữa lớp dựa trên

>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
3 và lớp dựa trên
>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
4 hầu như không tồn tại trong ví dụ này

Thông thường, khi bạn tạo một lớp giống như danh sách tùy chỉnh, bạn sẽ mong đợi các lớp con của

>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
3 hoạt động tốt hơn các lớp con của
>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
4. Tại sao?

Tuy nhiên, trong ví dụ trên, có vẻ như giả định này không hoàn toàn đúng. Vì lý do này, để quyết định siêu lớp nào là tốt nhất cho trường hợp sử dụng cụ thể của bạn, hãy đảm bảo chạy thử nghiệm hiệu suất

Bỏ qua hiệu suất, kế thừa từ

>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
3 được cho là cách tự nhiên trong Python, chủ yếu là do
>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
3 có sẵn trực tiếp cho các nhà phát triển Python dưới dạng một lớp tích hợp. Ngoài ra, hầu hết các nhà phát triển Python sẽ quen thuộc với các danh sách và các tính năng tiêu chuẩn của chúng, điều này sẽ cho phép họ viết các lớp giống như danh sách nhanh hơn

Ngược lại, lớp

>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
4 nằm trong mô-đun
>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
5, nghĩa là bạn sẽ phải nhập nó nếu muốn sử dụng nó trong mã của mình. Ngoài ra, không phải tất cả các nhà phát triển Python đều biết về sự tồn tại của
>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
4. Tuy nhiên,
>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
4 vẫn có thể là một công cụ hữu ích vì sự thuận tiện khi truy cập thuộc tính
>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
34, điều này có thể tạo điều kiện thuận lợi cho việc tạo các lớp giống như danh sách tùy chỉnh

Phần kết luận

Bây giờ bạn đã học cách tạo các lớp giống như danh sách tùy chỉnh với các hành vi mới và được sửa đổi. Để thực hiện việc này, bạn đã trực tiếp phân lớp con lớp

>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
3 tích hợp sẵn. Thay vào đó, bạn cũng đã kế thừa từ lớp
>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
4, có sẵn trong mô-đun
>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
5

Kế thừa từ

>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
3 và phân lớp
>>> from string_list import StringList

>>> data = StringList[[1, 2, 2, 4, 5]]
>>> data
['1', '2', '2', '4', '5']

>>> data.append[6]
>>> data
['1', '2', '2', '4', '5', '6']

>>> data.insert[0, 0]
>>> data
['0', '1', '2', '2', '4', '5', '6']

>>> data.extend[[7, 8, 9]]
>>> data
['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']

>>> data[3] = 3
>>> data
['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
4 đều là những chiến lược phù hợp để tiếp cận vấn đề tạo các lớp giống như danh sách của riêng bạn trong Python

Trong hướng dẫn này, bạn đã học cách

  • Tạo các lớp giống như danh sách bằng cách kế thừa từ lớp
    >>> from string_list import StringList
    
    >>> data = StringList[[1, 2, 2, 4, 5]]
    >>> data
    ['1', '2', '2', '4', '5']
    
    >>> data.append[6]
    >>> data
    ['1', '2', '2', '4', '5', '6']
    
    >>> data.insert[0, 0]
    >>> data
    ['0', '1', '2', '2', '4', '5', '6']
    
    >>> data.extend[[7, 8, 9]]
    >>> data
    ['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']
    
    >>> data[3] = 3
    >>> data
    ['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
    
    3 tích hợp
  • Xây dựng các lớp giống như danh sách bằng cách phân lớp
    >>> from string_list import StringList
    
    >>> data = StringList[[1, 2, 2, 4, 5]]
    >>> data
    ['1', '2', '2', '4', '5']
    
    >>> data.append[6]
    >>> data
    ['1', '2', '2', '4', '5', '6']
    
    >>> data.insert[0, 0]
    >>> data
    ['0', '1', '2', '2', '4', '5', '6']
    
    >>> data.extend[[7, 8, 9]]
    >>> data
    ['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']
    
    >>> data[3] = 3
    >>> data
    ['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
    
    4 từ mô-đun
    >>> from string_list import StringList
    
    >>> data = StringList[[1, 2, 2, 4, 5]]
    >>> data
    ['1', '2', '2', '4', '5']
    
    >>> data.append[6]
    >>> data
    ['1', '2', '2', '4', '5', '6']
    
    >>> data.insert[0, 0]
    >>> data
    ['0', '1', '2', '2', '4', '5', '6']
    
    >>> data.extend[[7, 8, 9]]
    >>> data
    ['0', '1', '2', '2', '4', '5', '6', '7', '8', '9']
    
    >>> data[3] = 3
    >>> data
    ['0', '1', '2', '3', '4', '5', '6', '7', '8', '9']
    
    5

Bây giờ bạn đã chuẩn bị tốt hơn để tạo danh sách tùy chỉnh của riêng mình, cho phép bạn tận dụng toàn bộ sức mạnh của loại dữ liệu phổ biến và hữu ích này trong Python

Tải xuống miễn phí. Nhấp vào đây để tải xuống mã nguồn mà bạn sẽ sử dụng để tạo các lớp giống như danh sách tùy chỉnh

Đánh dấu là đã hoàn thành

🐍 Thủ thuật Python 💌

Nhận một Thủ thuật Python ngắn và hấp dẫn được gửi đến hộp thư đến của bạn vài ngày một lần. Không có thư rác bao giờ. Hủy đăng ký bất cứ lúc nào. Được quản lý bởi nhóm Real Python

Gửi cho tôi thủ thuật Python »

Giới thiệu về Leodanis Pozo Ramos

Leodanis là một kỹ sư công nghiệp yêu thích Python và phát triển phần mềm. Anh ấy là một nhà phát triển Python tự học với hơn 6 năm kinh nghiệm. Anh ấy là một nhà văn đam mê kỹ thuật với số lượng bài báo được xuất bản ngày càng tăng trên Real Python và các trang web khác

» Tìm hiểu thêm về Leodanis

Mỗi hướng dẫn tại Real Python được tạo bởi một nhóm các nhà phát triển để nó đáp ứng các tiêu chuẩn chất lượng cao của chúng tôi. Các thành viên trong nhóm đã làm việc trong hướng dẫn này là

Aldren

Bartosz

Geir Arne

kate

Bậc thầy Kỹ năng Python trong thế giới thực Với quyền truy cập không giới hạn vào Python thực

Tham gia với chúng tôi và có quyền truy cập vào hàng nghìn hướng dẫn, khóa học video thực hành và cộng đồng các Pythonistas chuyên gia

Nâng cao kỹ năng Python của bạn »

Bậc thầy Kỹ năng Python trong thế giới thực
Với quyền truy cập không giới hạn vào Python thực

Tham gia với chúng tôi và có quyền truy cập vào hàng ngàn hướng dẫn, khóa học video thực hành và cộng đồng Pythonistas chuyên gia

Nâng cao kỹ năng Python của bạn »

Bạn nghĩ sao?

Đánh giá bài viết này

Tweet Chia sẻ Chia sẻ Email

Bài học số 1 hoặc điều yêu thích mà bạn đã học được là gì?

Mẹo bình luận. Những nhận xét hữu ích nhất là những nhận xét được viết với mục đích học hỏi hoặc giúp đỡ các sinh viên khác. Nhận các mẹo để đặt câu hỏi hay và nhận câu trả lời cho các câu hỏi phổ biến trong cổng thông tin hỗ trợ của chúng tôi

__ lớp __ trong Python là gì?

__class__ là một thuộc tính trên đối tượng đề cập đến lớp mà đối tượng được tạo ra từ đó . một. __lớp__ # Đầu ra.

Chúng ta có thể kế thừa nhiều lớp trong Python không?

Python hỗ trợ kế thừa từ nhiều lớp .

Super[] hoạt động như thế nào trong Python?

Hàm super[] trong Python giúp kế thừa lớp dễ quản lý và mở rộng hơn. Hàm trả về một đối tượng tạm thời cho phép tham chiếu đến lớp cha bằng từ khóa super . Hàm super[] có hai trường hợp sử dụng chính. Để tránh việc sử dụng lớp super [parent] một cách rõ ràng.

Chủ Đề