Python TUPLE – Đóng gói, Giải nén, So sánh, Cắt, Xóa, Khóa
So khớp Tuple là gì Python?
So khớp Tuple trong Python là một phương pháp nhóm các bộ dữ liệu bằng cách khớp phần tử thứ hai trong các bộ dữ liệu. Điều này đạt được bằng cách sử dụng từ điển bằng cách kiểm tra phần tử thứ hai trong mỗi bộ dữ liệu trong lập trình python. Tuy nhiên, chúng ta có thể tạo các bộ dữ liệu mới bằng cách lấy các phần của các bộ dữ liệu hiện có.
Cú pháp bộ dữ liệu
Tup = ('Jan','feb','march')
Để viết một bộ trống, bạn cần viết dưới dạng hai dấu ngoặc đơn không chứa gì-
tup1 = ();
Để viết tuple cho một giá trị duy nhất, bạn cần bao gồm dấu phẩy, mặc dù chỉ có một giá trị duy nhất. Ngoài ra ở cuối bạn cần viết dấu chấm phẩy như hình dưới đây.
Tup1 = (50,);
Các chỉ số của bộ dữ liệu bắt đầu từ 0 và chúng có thể được nối, cắt, v.v.
Bài tập Tuple
Python có tính năng gán bộ dữ liệu cho phép bạn gán nhiều biến cùng một lúc. Ở đây, chúng ta đã gán bộ dữ liệu 1 với thông tin về người như tên, họ, năm sinh, v.v. và một bộ dữ liệu 2 khác với các giá trị trong đó như số (1,2,3,….,7).
Ví dụ,
(tên, họ, năm sinh, bộ phim yêu thích và năm, nghề nghiệp, nơi sinh) = Robert
Đây là mã,
tup1 = ('Robert', 'Carlos','1965','Terminator 1995', 'Actor','Florida'); tup2 = (1,2,3,4,5,6,7); print(tup1[0]) print(tup2[1:4])
- Tuple 1 bao gồm danh sách thông tin của Robert
- Tuple 2 bao gồm danh sách các số trong đó
- Chúng tôi gọi giá trị của [0] trong bộ dữ liệu và đối với bộ dữ liệu 2, chúng tôi gọi giá trị từ 1 đến 4
- Chạy mã- Nó đặt tên Robert cho bộ dữ liệu đầu tiên trong khi đối với bộ dữ liệu thứ hai, nó cho số (2,3 và 4)
Đóng gói và mở gói
Khi đóng gói, chúng ta đặt giá trị vào một bộ dữ liệu mới trong khi khi giải nén, chúng ta trích xuất các giá trị đó thành các biến.
x = ("Guru99", 20, "Education") # tuple packing (company, emp, profile) = x # tuple unpacking print(company) print(emp) print(profile)
So sánh các bộ dữ liệu
Một toán tử so sánh trong Python có thể làm việc với bộ dữ liệu.
Việc so sánh bắt đầu với phần tử đầu tiên của mỗi bộ dữ liệu. Nếu chúng không so sánh với =,< hoặc > thì nó sẽ chuyển sang phần tử thứ hai, v.v.
Nó bắt đầu bằng việc so sánh phần tử đầu tiên từ mỗi bộ dữ liệu
Hãy nghiên cứu điều này với một ví dụ-
#trường hợp 1
a=(5,6) b=(1,4) if (a>b):print("a is bigger") else: print("b is bigger")
#trường hợp 2
a=(5,6) b=(5,4) if (a>b):print("a is bigger") else: print ("b is bigger")
#trường hợp 3
a=(5,6) b=(6,4) if (a>b):print("a is bigger") else: print("b is bigger")
Trường hợp 1: So sánh bắt đầu với phần tử đầu tiên của mỗi bộ dữ liệu. Trong trường hợp này 5>1, do đó đầu ra a lớn hơn
Trường hợp 2: So sánh bắt đầu với phần tử đầu tiên của mỗi bộ dữ liệu. Trong trường hợp này 5>5 là không thuyết phục. Vì vậy, nó tiến tới phần tử tiếp theo. 6>4 nên đầu ra a lớn hơn
Trường hợp 3: So sánh bắt đầu với phần tử đầu tiên của mỗi bộ dữ liệu. Trong trường hợp này 5>6 là sai. Vì vậy, nó đi vào khối else và in ra “b lớn hơn”.
Sử dụng bộ dữ liệu làm khóa trong từ điển
Vì các bộ dữ liệu có thể băm được còn danh sách thì không, nên chúng ta phải sử dụng bộ dữ liệu làm khóa nếu cần tạo một khóa tổng hợp để sử dụng trong từ điển.
Ví dụ: Chúng ta sẽ gặp một khóa tổng hợp nếu chúng ta cần tạo một danh bạ điện thoại ánh xạ họ, tên, các cặp số điện thoại, v.v. Giả sử rằng chúng ta đã khai báo các biến là số họ và số đầu tiên, chúng ta có thể viết một câu lệnh gán từ điển như dưới đây:
directory[last,first] = number
Bên trong dấu ngoặc, biểu thức là một tuple. Chúng ta có thể sử dụng phép gán tuple trong vòng lặp for để điều hướng từ điển này.
for last, first in directory:
print first, last, directory[last, first]
Vòng lặp này điều hướng các khóa trong thư mục, là các bộ dữ liệu. Nó gán các phần tử của mỗi bộ là cuối và đầu, sau đó in tên và số điện thoại tương ứng.
Bộ dữ liệu và từ điển
Từ điển có thể trả về danh sách các bộ dữ liệu bằng cách gọi các mục, trong đó mỗi bộ dữ liệu là một cặp giá trị khóa.
a = {'x':100, 'y':200} b = list(a.items()) print(b)
Xóa bộ dữ liệu
Tuples là bất biến và không thể bị xóa. Bạn không thể xóa hoặc loại bỏ các mục khỏi một bộ dữ liệu. Nhưng có thể xóa hoàn toàn bộ dữ liệu bằng cách sử dụng từ khóa
del
Cắt Tuple
Để tìm nạp các bộ phần tử phụ cụ thể từ bộ hoặc danh sách, chúng tôi sử dụng chức năng duy nhất này được gọi là cắt. Cắt lát không chỉ áp dụng cho bộ mà còn cho mảng và danh sách.
x = ("a", "b","c", "d", "e") print(x[2:4])
Đầu ra của mã này sẽ là ('c', 'd').
Dưới đây là Python 2 Mã cho tất cả ví dụ trên
tup1 = ('Robert', 'Carlos','1965','Terminator 1995', 'Actor','Florida'); tup2 = (1,2,3,4,5,6,7); print tup1[0] print tup2[1:4] #Packing and Unpacking x = ("Guru99", 20, "Education") # tuple packing (company, emp, profile) = x # tuple unpacking print company print emp print profile #Comparing tuples #case 1 a=(5,6) b=(1,4) if (a>b):print "a is bigger" else: print "b is bigger" #case 2 a=(5,6) b=(5,4) if (a>b):print "a is bigger" else: print "b is bigger" #case 3 a=(5,6) b=(6,4) if (a>b):print "a is bigger" else: print "b is bigger" #Tuples and dictionary a = {'x':100, 'y':200} b = a.items() print b #Slicing of Tuple x = ("a", "b","c", "d", "e") print x[2:4]
Các hàm tích hợp với Tuple
Để thực hiện các tác vụ khác nhau, tuple cho phép bạn sử dụng nhiều hàm dựng sẵn như all(), Any(), enumerate(), max(), min(),sort(), len(), tuple(), v.v.
Ưu điểm của tuple so với danh sách
- Việc lặp qua bộ dữ liệu nhanh hơn so với danh sách vì bộ dữ liệu là bất biến.
- Các bộ dữ liệu bao gồm các phần tử bất biến có thể được sử dụng làm khóa cho từ điển, điều này không thể thực hiện được với danh sách
- Nếu bạn có dữ liệu không thể thay đổi, việc triển khai nó dưới dạng bộ dữ liệu sẽ đảm bảo rằng nó vẫn được bảo vệ chống ghi
Tổng kết
Python có tính năng gán bộ dữ liệu cho phép bạn gán nhiều biến cùng một lúc.
- Đóng gói và giải nén các bộ dữ liệu
- Khi đóng gói, chúng ta đặt giá trị vào một bộ dữ liệu mới trong khi khi giải nén, chúng ta trích xuất các giá trị đó thành các biến.
- A toán tử so sánh trong Python có thể làm việc với bộ dữ liệu.
- Sử dụng bộ dữ liệu làm khóa trong từ điển
- Các bộ dữ liệu có thể băm được còn danh sách thì không
- Chúng ta phải sử dụng bộ dữ liệu làm khóa nếu cần tạo khóa tổng hợp để sử dụng trong từ điển
- Từ điển có thể trả về danh sách các bộ dữ liệu bằng cách gọi các mục, trong đó mỗi bộ dữ liệu là một cặp giá trị khóa
- Tuples là bất biến và không thể bị xóa. Bạn không thể xóa hoặc loại bỏ các mục khỏi một bộ dữ liệu. Nhưng có thể xóa hoàn toàn bộ dữ liệu bằng cách sử dụng từ khóa “del”
- Để tìm nạp các tập hợp phần tử con cụ thể từ bộ hoặc danh sách, chúng tôi sử dụng chức năng duy nhất này được gọi là cắt