Hướng dẫn namedtuple trong python
Module collection trong Python được định nghĩa là một bộ chứa được sử dụng để lưu trữ các bộ sưu tập dữ liệu, ví dụ: list, dict, set và tuple,... Nó được giới thiệu để cải thiện các chức năng của bộ chứa bộ sưu tập tích hợp. Show Nội dung chính Show
Nội dung chính Show
Module collection trong Python được giới thiệu lần đầu tiên trong phiên bản 2.4. Có nhiều loại Module collection khác nhau như sau: Hàm namedtuple()Hàm python namedtuple() trả về một đối tượng giống như tuple với tên cho từng vị trí trong bộ dữ liệu. Nó được sử dụng để loại bỏ vấn đề ghi nhớ chỉ số của từng trường của một đối tượng bộ dữ liệu trong các bộ dữ liệu thông thường. test = ('Hello', 24, 'M') print(test) Kết quả: Hàm OrderedDict()Python OrderedDict() tương tự như một đối tượng Dictionary trong đó các khóa duy trì thứ tự chèn. Nếu chúng ta cố gắng chèn khóa một lần nữa, giá trị trước đó sẽ bị ghi đè cho khóa đó. import collections d1 = collections.OrderedDict() d1['A'] = 10 d1['C'] = 12 d1['B'] = 11 d1['D'] = 13 d1['C'] = 15 for k, v in d1.items(): print (k, v) Kết quả: Hàm defaultdict()Python defaultdict() được định nghĩa là một đối tượng giống như dictionary. Nó là một lớp con của lớp dict. Nó cung cấp tất cả các phương thức được cung cấp bởi dictionary nhưng lấy đối số đầu tiên làm kiểu dữ liệu mặc định. from collections import defaultdict number = defaultdict(int) number['one'] = 1 number['two'] = 2 print(number['three']) Kết quả: Hàm Counter()Python Count() là một lớp con của đối tượng từ điển giúp đếm các đối tượng hashtable. from collections import Counter c = Counter() list = [1, 2, 3, 4, 5, 7, 8, 5, 9, 6, 10] Counter(list) Counter({1:5, 2:4}) list = [1, 2, 4, 7, 5, 1, 6, 7, 6, 9, 1] c = Counter(list) print(c[1]) Kết quả: Hàm deque()Python deque() là hàng đợi hai đầu cho phép chúng ta thêm và xóa các phần tử ở cả hai đầu. from collections import deque list = ["x", "y", "z"] deq = deque(list) print(deq) Kết quả: Thứ tư, 19/08/2020 | 00:00 GMT+7 Python 3 có một số cấu trúc dữ liệu được tích hợp sẵn, bao gồm bộ dữ liệu, từ điển và danh sách. Cấu trúc dữ liệu cung cấp cho ta cách tổ chức và lưu trữ dữ liệu. Mô-đun Trong hướng dẫn này, ta sẽ đi qua ba lớp trong mô-đun Đối với hướng dẫn này, ta sẽ làm việc chủ yếu với một kho cá mà ta cần sửa đổi khi cá được thêm vào hoặc xóa khỏi một bể cá hư cấu. Yêu cầuĐể tận dụng tối đa hướng dẫn này, bạn nên làm quen với các kiểu dữ liệu tuple, từ điển và danh sách, cả cú pháp của chúng và cách truy xuất dữ liệu từ chúng. Bạn có thể xem lại các hướng dẫn này để biết thông tin cơ bản cần thiết:
Thêm các trường được đặt tên vào TuplesBộ giá trị Python là một chuỗi các phần tử có thứ tự bất biến hoặc không thể thay đổi. Tuples thường được sử dụng để đại diện cho dữ liệu dạng cột; ví dụ: các dòng từ file CSV hoặc các hàng từ database SQL. Một bể cá có thể theo dõi số lượng cá tồn kho của nó dưới dạng một loạt các bộ giá trị. Một cá thể tuple:
Tuple này bao gồm ba phần tử chuỗi. Mặc dù hữu ích theo một số cách, nhưng tuple này không chỉ ra rõ ràng những gì mỗi trường của nó đại diện. Trên thực tế, phần tử Giải thích về cánh đồng cá
Bảng này làm rõ rằng mỗi yếu tố trong số ba yếu tố của tuple đều có ý nghĩa rõ ràng. Hãy sử dụng
Ta có thể sử dụng lớp
Nếu ta chạy mã này, ta sẽ thấy kết quả sau:
Nếu ta chạy hai
Truy cập Sử dụng Ngoài ra, Sử
dụng
Nếu ta chạy
Gọi Các version Python cũ hơn 3.8 có thể xuất dòng này hơi khác một chút. Ví dụ: bạn có thể xem một Lưu ý: Trong Python, các phương thức có dấu gạch
dưới ở đầu thường được coi là "riêng tư". Phương pháp bổ sung được cung cấp bởi Thu thập dữ liệu trong từ điển Việc thu thập dữ liệu trong từ điển Python thường rất hữu ích.
Nếu ta chạy mã này, ta sẽ thấy kết quả như sau:
Ngược lại, các từ điển thông thường sẽ tạo ra
Nếu ta chạy mã này, ta sẽ thấy kết quả như sau:
Từ điển thông thường Tiếp tục với ví dụ về bể cá giả tưởng của ta , giả sử ta có một danh sách các bộ cá đại diện cho hàng tồn kho của bể cá:
Ba con cá tồn tại trong bể - tên, loài và bể chứa của chúng được ghi chú trong ba bộ này. Mục tiêu của ta là sắp xếp hàng tồn kho của ta theo bể — ta muốn biết danh sách cá có trong mỗi bể. Nói cách khác, ta muốn có một từ điển ánh xạ Ta có thể sử dụng
Chạy mã này, ta sẽ thấy kết quả sau:
Nếu không có Thêm ví dụ chi tiết mà không có phán đoán mặc định
Sử dụng chỉ một từ điển thông thường (thay vì một Sử dụng deque để thêm hiệu quả các phần tử vào mỗi bên của bộ sưu tậpDanh sách Python là một chuỗi các phần tử có thứ tự có thể thay đổi hoặc có thể thay đổi. Python có thể thêm vào danh sách trong thời gian không đổi (độ dài của danh sách không ảnh hưởng đến thời gian cần thêm), nhưng việc chèn vào đầu danh sách có thể chậm hơn — thời gian cần tăng khi danh sách lớn hơn. Theo ký hiệu Big O , việc thêm vào một danh sách là một phép toán Lưu ý: Các kỹ sư phần mềm thường đo lường hiệu suất của các thủ tục bằng cách sử dụng ký hiệu “Big O”. Khi kích thước của một đầu vào không ảnh hưởng đến thời gian thực hiện một thủ tục, nó được cho là chạy trong thời gian không đổi hoặc Đôi khi, kích
thước của đầu vào ảnh hưởng trực tiếp đến lượng thời gian cần để chạy một thủ tục. Ví dụ: việc chèn vào đầu danh sách Python chạy càng chậm khi càng có nhiều phần tử trong danh sách. Ký hiệu Big O sử dụng chữ cái Nói chung, thủ tục Ta có thể chèn vào đầu danh sách Python:
Nếu ta chạy như sau, ta sẽ thấy kết quả như sau:
Phương thức Chèn một mục vào đầu
Chạy mã này, ta sẽ thấy kết quả sau:
Ta có thể khởi tạo Lưu ý: Mặc dù Kết luận Mô-đun Từ đây, bạn có thể sử dụng tài liệu của module Tags: Các tin liên quan Cách chuyển đổi kiểu dữ liệu trong Python 3 |