Trước đó chúng ta đã thảo luận về Toán tử Python. Hôm nay, trong Hướng dẫn cấu trúc dữ liệu Python này, chúng ta sẽ nói về các cấu trúc dữ liệu khác nhau mà Python cung cấp cho chúng ta.
Chúng bao gồm list Python, bộ tuple Python, bộ Python và từ điển Python với cú pháp và ví dụ của chúng.
Các bài viết liên quan:
Vì vậy, hãy bắt đầu Cấu trúc dữ liệu Python.
Cấu trúc dữ liệu Python là gì?
Bạn có thể coi cấu trúc dữ liệu như một cách tổ chức và lưu trữ dữ liệu để chúng ta có thể truy cập và sửa đổi nó một cách hiệu quả.
Trước đó, chúng ta đã thấy các kiểu dữ liệu nguyên thủy như số nguyên, số float, Boolean và chuỗi. Bây giờ, chúng ta sẽ xem xét sâu hơn các cấu trúc dữ liệu Python không nguyên thủy.
Hãy bắt đầu với cấu trúc và list dữ liệu Python đầu tiên của chúng tôi.
Number(số)
Trong Python, kiểu dữ liệu số đại diện cho dữ liệu có giá trị số. Giá trị số có thể là số nguyên, số thực hoặc thậm chí là số phức. Các giá trị này được định nghĩa là lớp int, float và phức tạp trong Python.
Integers – Giá trị này được biểu thị bằng lớp int. Nó chứa các số nguyên dương hoặc âm (không có phân số hoặc số thập phân). Trong Python không có giới hạn về thời lượng của một giá trị số nguyên.
Float – Giá trị này được đại diện bởi lớp float. Nó là một số thực với biểu diễn dấu phẩy động. Nó được chỉ định bởi một dấu thập phân. Theo tùy chọn, ký tự e hoặc E theo sau là số nguyên dương hoặc âm có thể được thêm vào để chỉ định ký hiệu khoa học.
Complex Numbers – Số phức được biểu diễn bằng lớp phức. Nó được chỉ định là (phần thực) + (phần ảo)j. Ví dụ – 2+3j
Lưu ý – hàm type() được sử dụng để xác định loại kiểu dữ liệu.
#sử dụng number trong python a = 5 print("Type of a: ", type(a)) b = 4.7 print("\nType of b: ", type(b)) c = 2 + 7j print("\nType of c: ", type(c))
String
Trong Python, string là các mảng byte đại diện cho các ký tự Unicode. Chuỗi là set của một hoặc nhiều ký tự được đặt trong một trích dẫn đơn, trích dẫn kép hoặc trích dẫn ba. Trong python không có kiểu dữ liệu ký tự, một ký tự là một chuỗi có độ dài bằng một. Nó được đại diện bởi lớp str.
Tạo chuỗi
String trong Python có thể tạo nhờ sử dụng dấu ngoặc đơn hoặc dấu ngoặc kép.
String1 = 'hello python string' print(String1)
Truy cập các phần tử của String
Trong Python, có thể truy cập các ký tự riêng lẻ của String bằng cách sử dụng index. Index cho phép tham chiếu đến địa chỉ thứ tự trong Chuỗi.
String1 = "Hellp python string" print(String1) # xuất ra char đầu tiên print(String1[0]) # xuất ra char cuối cùng print(String1[-1])
Boolean
Kiểu dữ liệu với một trong hai giá trị tích hợp sẵn, Đúng hoặc Sai. Các đối tượng Boolean bằng True là đúng (đúng) và những đối tượng bằng Sai là sai (sai). Nhưng các đối tượng không phải Boolean cũng có thể được đánh giá trong ngữ cảnh Boolean và được xác định là đúng hay sai. Nó được biểu thị bằng lớp bool.
Lưu ý – Đúng và Sai với chữ ‘T’ viết hoa và ‘F’ là các phép toán luận hợp lệ nếu không python sẽ đưa ra lỗi.
print(type(True)) print(type(False))
List trong Python
List trong Python là một vùng chứa không đồng nhất cho các mục. Điều này sẽ nhắc bạn về một mảng trong C ++, nhưng vì Python không hỗ trợ mảng, chúng tôi có list Python.
Làm thế nào để khai báo list Python?
Để sử dụng một list, bạn phải khai báo nó trước. Thực hiện việc này bằng cách sử dụng dấu ngoặc vuông và phân tách các giá trị bằng dấu phẩy.
>>> languages= [ 'C ++' , 'Python' , 'Scratch' ]
Bạn có thể đặt bất kỳ type giá trị nào trong list. Đây có thể là một chuỗi, một Tuple, một Boolean hoặc thậm chí là một list.
>>> list1 = [ 1 , [ 2 , 3 ] , ( 4 , 5 ) , False , 'No' ]
Lưu ý rằng ở đây, chúng tôi đặt các type giá trị khác nhau trong list. Do đó, một list là (hoặc có thể) không đồng nhất.
Làm thế nào để truy cập list Python?
Một. Truy cập toàn bộ list
Để truy cập toàn bộ list, tất cả những gì bạn cần làm là nhập tên của nó vào shell.
>>> list1
Truy cập một mục duy nhất từ list
Để chỉ lấy một mục từ list, bạn phải sử dụng chỉ mục của nó. Tuy nhiên, hãy nhớ rằng việc lập chỉ mục bắt đầu từ 0. Đầu tiên chúng ta hãy xem xét hai type lập chỉ mục.
Lập chỉ mục tích cực – Như bạn có thể đoán, lập chỉ mục tích cực bắt đầu từ 0 cho mục đầu tiên / ngoài cùng bên trái, sau đó chuyển sang phải.
>>> list1 [ 3 ]
False: Lập chỉ mục tiêu cực – Trái ngược với lập chỉ mục tích cực, lập chỉ mục tiêu cực bắt đầu ở -1 cho mục ngoài cùng bên phải / cuối cùng, sau đó đi ngang qua trái. Để có được cùng một mục dạng list1 bằng cách lập chỉ mục âm, chúng ta sử dụng chỉ mục -2.
>>> type(list1[-2])
Cũng cần lưu ý rằng chỉ mục không thể là một số thực, nó phải là một số nguyên.
>>> list1 [ 1.0 ]
Nếu bạn gặp bất kỳ nghi ngờ nào trong list Python hoặc Cấu trúc dữ liệu Python, vui lòng nhận xét.
Slide một list Python
Đôi khi, bạn có thể không muốn toàn bộ list hoặc một mục duy nhất, nhưng một số mục từ đó. Ở đây, toán tử cắt [:] được sử dụng.
Giả sử chúng ta muốn các mục từ thứ hai đến thứ tư từ list ‘list1’. Chúng tôi viết đoạn mã sau cho việc này.
>>> list1 [ 1 : 4 ]
Ở đây, chúng tôi muốn các mục từ [2,3] thành False. Các chỉ số cho các mục ranh giới này lần lượt là 1 và 3. Nhưng nếu chỉ mục kết thúc là n, thì nó sẽ in các mục cho đến chỉ mục n-1. Do đó, chúng tôi đã cho nó chỉ số kết thúc là 4 ở đây.
Chúng ta cũng có thể sử dụng lập chỉ mục phủ định trong toán tử cắt. Hãy xem làm thế nào.
>>> list1 [ : -2 ]
Ở đây, -2 là chỉ số cho bộ giá trị (4,5).
Một list có thể thay đổi
Tính đột biến là khả năng bị đột biến, bị thay đổi. list có thể thay đổi, vì vậy bạn cũng có thể chỉ định lại và xóa các mục riêng lẻ.
>>> languages
>>> languages[2]='Java' >>> languages
Về cách xóa một mục, chúng ta sẽ xem trong phần d.
Làm thế nào để xóa một list Python?
Giống như bất kỳ thứ gì khác trong Python, có thể xóa list.
Để xóa toàn bộ list, hãy sử dụng từ khóa del với tên của list.
>>> list1
Nhưng để xóa một mục hoặc một lát, bạn cần chỉ mục / chỉ mục của nó.
>>> del languages[2] >>> languages
Hãy xóa một lát ngay bây giờ.
>>> del languages[1:] >>> languages
Chỉ định lại một list trong Python
Bạn có thể chỉ định lại một mục, một phần hoặc toàn bộ list. Hãy lấy một list mới và sau đó chỉ định lại trên đó.
>>> list1 = [ 1 , 2 , 3 , 4 , 5 , 6 , 7 , 8 ]
Chỉ định lại một index duy nhất
>>> list1[0]=0 >>> list1
Chỉ định lại một slice
Bây giờ hãy thử gán lại một lát.
>>> list1[1:3]=[9,10,11] >>> list1
Sắp xếp lại toàn bộ list
Cuối cùng, hãy gán lại toàn bộ list.
>>> list1=[0,0,0] >>> list1
Để có cái nhìn sâu hơn về list, hãy đọc bài viết của chúng tôi về list Python.
Bất kỳ truy vấn nào về cấu trúc dữ liệu Python, vui lòng bình luận
Python Tuple
Cấu trúc dữ liệu Python này giống như một, giống như một list trong Python, là một vùng chứa không đồng nhất cho các mục.
Nhưng sự khác biệt chính giữa hai (tuple và list) là một list có thể thay đổi được, nhưng một tuple là bất biến.
Điều này có nghĩa là trong khi bạn có thể chỉ định lại hoặc xóa toàn bộ bộ giá trị, bạn không thể thực hiện điều tương tự đối với một mục hoặc một lát.
Để khai báo một bộ giá trị, chúng ta sử dụng dấu ngoặc đơn.
>>> color = ( 'Red' , 'Green' , 'Blue' )
Đóng gói Python Tuple
Đóng gói Tuple trong Python là thuật ngữ để đóng gói chuỗi giá trị vào một bộ giá trị mà không sử dụng dấu ngoặc đơn.
>>> mytuple=1,2,3, #Or it could have been mytuple=1,2,3 >>> mytuple
Mở gói Python Tuple
Ngược lại với đóng gói tuple, giải nén phân bổ các giá trị từ một tuple thành một chuỗi các biến.
>>> a,b,c=mytuple >>> print(a,b,c)
Tạo một bộ tuple với một index duy nhất
Hãy làm điều này một lần nữa. Tạo một bộ và gán 1 cho nó.
>>> a = ( 1 )
Bây giờ, hãy gọi hàm type () trên nó.
>>> type ( a )
Như bạn có thể thấy, điều này được khai báo là một số nguyên, không phải một bộ giá trị.
Để giải quyết vấn đề này, bạn cần thêm dấu phẩy vào cuối mục đầu tiên 1. Điều này cho thông dịch viên biết rằng đó là một bộ giá trị.
>>> a=(1,) >>> type(a)
Truy cập, chỉ định lại và xóa các index
Chúng ta có thể thực hiện các thao tác này trên một bộ tuple giống như chúng ta có thể thực hiện trên một list. Sự khác biệt duy nhất tồn tại là bởi vì một tuple là bất biến, vì vậy bạn không thể gây rối với một mục hoặc một lát.
>>> del a [ 0 ]
Mặc dù tuple này chỉ có một mục, chúng tôi không thể xóa nó vì chúng tôi đã sử dụng chỉ mục của nó để xóa.
SET trong Python
Đây là một trong những cấu trúc dữ liệu Python quan trọng. Tập hợp Python là một khái niệm hơi khác so với một list hoặc một bộ giá trị. Một tập hợp, trong Python, cũng giống như tập hợp toán học. Nó không giữ các giá trị trùng lặp và không có thứ tự. Tuy nhiên, nó không phải là bất biến, không giống như tuple.
Đầu tiên hãy khai báo một tập hợp. Sử dụng dấu ngoặc nhọn cho tương tự.
>>> myset={3,1,2} >>> myset
Như bạn có thể thấy, nó đã sắp xếp lại các phần tử theo thứ tự tăng dần.
Vì một tập hợp là không có thứ tự, không có cách nào chúng ta có thể sử dụng lập chỉ mục để truy cập hoặc xóa các phần tử của nó. Sau đó, để thực hiện các thao tác trên nó, Python cung cấp cho chúng ta list các hàm và phương thức như discard (), pop (), clear (), remove (), add (), v.v. Các hàm như len () và max () cũng áp dụng cho các tập hợp.
Bất kỳ nghi ngờ nào được nêu ra trong Cấu trúc dữ liệu Python? Hãy bình luận.
Dictionary trong Python
Cuối cùng, chúng ta sẽ xem xét từ điển Python. Hãy nghĩ về một cuốn từ điển ngoài đời thực. Cái này được dùng để làm gì? Nó chứa các cặp từ-nghĩa. Tương tự như vậy, từ điển Python chứa các cặp khóa-giá trị. Tuy nhiên, bạn không thể sử dụng một mục không thể hack làm chìa khóa.
Để khai báo một từ điển Python, chúng ta sử dụng dấu ngoặc nhọn. Nhưng vì nó có các cặp khóa-giá trị thay vì các giá trị đơn lẻ, điều này phân biệt từ điển với một tập hợp.
>>> mydict={1:2,2:4,3:6} >>> mydict
Để truy cập các cặp từ từ điển Python, chúng tôi sử dụng các khóa của chúng làm chỉ mục. Ví dụ, hãy thử truy cập giá trị 4.
>>> mydict [ 2 ]
Đây là tất cả về Hướng dẫn cấu trúc dữ liệu Python.
Kết luận
Tóm tắt cho hướng dẫn Cấu trúc dữ liệu Python hôm nay, chúng ta đã tìm hiểu về các cấu trúc dữ liệu khác nhau do người dùng xác định bằng cách sử dụng python như list, bộ giá trị, bộ và từ điển.
Tất cả những điều này đều có ưu và nhược điểm riêng. Chúng tôi khuyên bạn nên tham khảo các hướng dẫn của chúng tôi về từng thứ đó để làm sắc nét các trục của bạn. Hẹn gặp lại.