Cách tạo và sử dụng Tuples trong Python

Cách tạo và sử dụng Tuples trong Python

Một bộ tuple là một tập hợp các đối tượng Python bất biến. Nó có thể chứa các phần tử của bất kỳ kiểu dữ liệu tùy ý nào (số nguyên, chuỗi, float, danh sách, v.v.), điều này làm cho nó trở thành một cấu trúc dữ liệu linh hoạt và mạnh mẽ. Nó là một phần của ngôn ngữ cốt lõi Python và được sử dụng rộng rãi trong các chương trình và dự án Python.





Tạo một Tuple

Một bộ dữ liệu trong Python có thể được tạo bằng cách đặt tất cả các phần tử được phân tách bằng dấu phẩy bên trong dấu ngoặc đơn () .





t1 = (1, 2, 3, 4)
t2 = ('Make', 'Use', 'Of')
t3 = (1.2, 5.9, 5.4, 9.3)

Các phần tử của tuple là bất biến và có thứ tự. Nó cho phép các giá trị trùng lặp và có thể có bất kỳ số phần tử nào. Bạn thậm chí có thể tạo một bộ giá trị trống. Các phần tử của một tuple có thể thuộc bất kỳ kiểu dữ liệu nào (số nguyên, float, chuỗi, tuple, v.v.).





Tạo một Tuple trống

Một bộ giá trị trống có thể được tạo bằng cách sử dụng các dấu ngoặc đơn mở và đóng trống.

emptyTuple = ()

Tạo một Tuple với một phần tử duy nhất

Để tạo một bộ giá trị chỉ có 1 phần tử, bạn cần thêm đoạn văn sau phần tử để nó được Python công nhận là một tuple.



# t1 is a tuple
t1 = ( 3.14, )
print( type(t1) )
# prints
# t2 is not a tuple
t2 = ( 3.14 )
print( type(t2) )
# prints

Ghi chú: kiểu() Hàm trả về kiểu lớp của đối tượng được truyền dưới dạng tham số.

Bằng cách không sử dụng dấu phẩy sau phần tử dẫn đến loại lớp của t2 là 'float', do đó bắt buộc phải sử dụng dấu phẩy sau phần tử khi tạo một bộ giá trị với một giá trị duy nhất.





Tạo một Tuple với các kiểu dữ liệu khác nhau

Các phần tử của bộ tuple có thể thuộc bất kỳ kiểu dữ liệu nào. Tính năng này làm cho tuple trở nên linh hoạt.

sự khác biệt giữa TV và màn hình máy tính
tup1 = ( 'MUO', True, 3.9, 56, [1, 2, 3] )
print( tup1 )
# prints
('MUO', True, 3.9, 56, [1, 2, 3])

Tạo một Tuple bằng cách sử dụng hàm tạo tuple ()

Tuples cũng có thể được tạo bằng cách sử dụng tuple () constructor. Sử dụng hàm tạo tuple (), bạn có thể chuyển đổi các chuỗi như danh sách / từ điển thành một bộ tuple.





tup1 = tuple( (1, 2, 3) )
print( tup1 )
# prints
(1, 2, 3)

Tạo một Tuple lồng nhau

Các bộ giá trị có thể dễ dàng được lồng vào bên trong các bộ giá trị khác. Bạn có thể lồng bộ tuple lên bất kỳ mức nào bạn muốn.

tup1 = (1, 2, 3)
tup2 = ( 'Hello', tup1, 45 )
print( tup2 )
# prints
('Hello', (1, 2, 3), 45)

Truy cập các phần tử trong một Tuple

Bạn có thể truy cập các phần tử tuple bằng cách sử dụng số chỉ mục bên trong dấu ngoặc vuông. Số chỉ mục bắt đầu từ 0. Tuple cũng hỗ trợ lập chỉ mục âm:

  • -1: trỏ đến phần tử cuối cùng
  • -2: trỏ đến phần tử cuối cùng thứ hai, v.v.
tup1 = ('M', 'A', 'K', 'E', 'U', 'S', 'E', 'O', 'F')
print( tup1[0] )
print( tup1[5] )
print( tup1[-1] )
print( tup1[-9] )
# prints
M
S
F
M

Cắt một Tuple

Bạn có thể truy cập một loạt các phần tử trong một bộ bằng cách sử dụng dấu hai chấm : nhà điều hành. Tuple cũng hỗ trợ thao tác cắt bằng cách sử dụng các chỉ mục âm.

tup1 = ('M', 'A', 'K', 'E', 'U', 'S', 'E', 'O', 'F')
# Prints elements from index 1(included) to index 6(excluded)
print( tup1[1:6] )
# Prints elements from start to index 8(excluded)
print( tup1[:8] )
# Prints elements from index 3(included) to the end
print( tup1[3:] )
# Prints elements from index -4(included) to index -1(excluded)
print( tup1[-4:-1] )
# prints
('A', 'K', 'E', 'U', 'S')
('M', 'A', 'K', 'E', 'U', 'S', 'E', 'O')
('E', 'U', 'S', 'E', 'O', 'F')
('S', 'E', 'O')

Kiểm tra xem một phần tử có tồn tại trong một Tuple hay không

Bạn có thể kiểm tra xem một phần tử có tồn tại trong một bộ hay không bằng cách sử dụng trong từ khóa.

tup1 = ('M', 'A', 'K', 'E', 'U', 'S', 'E', 'O', 'F')
if 'M' in tup1:
print('Yes, the element M exists in the tuple')
else:
print('Element not found in the tuple !!')

# prints
Yes, the element M exists in the tuple

Đang cập nhật Tuples

Vì các bộ giá trị là bất biến, nên không thể thay đổi giá trị của chúng. Python ném ra TypeError nếu bạn cố gắng cập nhật bộ tuple.

tup1 = ('M', 'A', 'K', 'E', 'U', 'S', 'E', 'O', 'F')
tup1[0] = 'Z'
# Following error is thrown
tup1[0] = 'Z'
TypeError: 'tuple' object does not support item assignment

Nhưng có một hack nếu bạn muốn cập nhật tuple của mình.

Thay đổi giá trị của các phần tử của một Tuple bằng cách sử dụng danh sách

Bạn có thể thay đổi giá trị của các phần tử trong bộ của bạn bằng cách sử dụng danh sách bằng Python . Trước tiên, bạn sẽ phải chuyển đổi bộ tuple thành một danh sách. Sau đó, sửa đổi danh sách như bạn muốn. Cuối cùng, chuyển đổi danh sách trở lại thành một bộ.

tup1 = ( 1, 2, 3 )
print( 'This is the old Tuple: ')
print( tup1 )
temp = list( tup1 )
temp[0] = 4
tup1 = tuple( temp )
print( 'This is the Updated Tuple: ')
print( tup1 )
# prints
This is the old Tuple:
(1, 2, 3)
This is the Updated Tuple:
(4, 2, 3)

Thêm các phần tử mới trong một Tuple bằng cách sử dụng danh sách

Vì các bộ giá trị là không thể thay đổi, nên không thể thêm các phần tử mới vào một bộ giá trị. Python sẽ xuất hiện một lỗi như sau:

AttributeError: 'tuple' object has no attribute 'append

Một lần nữa, bạn có thể sử dụng hack của chúng tôi (sử dụng danh sách) để giải quyết vấn đề này. Đầu tiên, chuyển đổi tuple thành một danh sách. Sau đó, thêm các phần tử mới vào danh sách. Cuối cùng, chuyển đổi danh sách thành một bộ.

cách đặt mật khẩu bảo vệ ổ đĩa ngón tay cái

Ghi chú: phương thức append () được sử dụng trong Python để thêm một phần tử mới vào cuối danh sách.

tup1 = ( 1, 2, 3 )
print( 'This is the old Tuple: ')
print( tup1 )
temp = list( tup1 )
temp.append(4)
tup1 = tuple( temp )
print( 'This is the Updated Tuple: ')
print( tup1 )
# prints
This is the old Tuple:
(1, 2, 3)
This is the Updated Tuple:
(1, 2, 3, 4)

Xóa hoạt động trên Tuples

Vì các bộ giá trị không thể thay đổi được, nên không thể xóa bất kỳ phần tử nào khỏi bộ giá trị. Nếu bạn muốn xóa bộ tuple hoàn chỉnh, nó có thể được thực hiện bằng cách sử dụng sau đó từ khóa.

tup1 = ( 1, 2, 3 )
del tup1

Nhưng bạn có thể sử dụng cùng một cách hack (sử dụng danh sách) như bạn đã sử dụng để thay đổi và thêm các mục tuple.

Xóa các phần tử khỏi một Tuple bằng cách sử dụng danh sách

Có thể xóa các phần tử khỏi bộ tuple bằng cách sử dụng danh sách trong 3 bước đơn giản:

Bước 1: Chuyển đổi tuple thành danh sách.

Bước 2: Xóa các phần tử khỏi danh sách bằng cách sử dụng tẩy() phương pháp

Bước 3: Chuyển danh sách thành một bộ.

tup1 = ( 1, 2, 3 )
print( 'This is the old Tuple: ')
print( tup1 )
temp = list( tup1 )
temp.remove(1)
tup1 = tuple( temp )
print( 'This is the Updated Tuple: ')
print( tup1 )
# prints
This is the old Tuple:
(1, 2, 3)
This is the Updated Tuple:
(2, 3)

Đóng gói và mở gói Tuples

Trong khi tạo một bộ giá trị, các giá trị được chỉ định. Đây được gọi là Đóng gói Tuple .

# Example of packing a tuple
tup1 = ( 1, 2, 3)

Trong khi trích xuất các giá trị trở lại các biến được gọi là Mở gói một Tuple .

windows 10 100% sử dụng cpu
# Example of unpacking a tuple
tup1 = ( 1, 2, 3 )
( one, two, three ) = tup1
print( one )
print( two )
print( three )
# prints
1
2
3

Looping với Python Tuples

Tuples là các vùng chứa có thể lặp lại giống như danh sách trong Python. Bạn có thể dễ dàng lặp qua các phần tử tuple.

Sử dụng cho Vòng lặp

Vòng lặp for của Python hoạt động bằng cách lặp qua các phần tử của vùng chứa.

# Looping using for loop
tup1 = ( 1, 2, 3 )
for element in tup1:
print( element )
# prints
1
2
3

Có liên quan: Cách sử dụng For Loops trong Python

Sử dụng số chỉ mục

Bạn có thể lặp qua bộ giá trị bằng cách sử dụng các chỉ mục của bộ giá trị. Sử dụng len () hàm để tìm kích thước của tuple.

tup1 = ( 1, 2, 3 )
for index in range(len(tup1)):
print( tup1[index] )

# prints
1
2
3

Cải thiện hiệu quả mã của bạn

Vì cấu trúc dữ liệu tuple là bất biến, tốc độ xử lý nhanh hơn hơn danh sách. Do đó, nó cung cấp sự tối ưu hóa cho các chương trình / dự án Python. Sử dụng cấu trúc dữ liệu mạnh mẽ và linh hoạt này (bộ dữ liệu) trong các chương trình Python của bạn sẽ nâng hiệu quả mã của bạn lên một cấp độ tiếp theo.

Đăng lại Đăng lại tiếng riu ríu E-mail Học Python? Đây là cách thao tác chuỗi

Việc sử dụng và thao tác các chuỗi trong Python có thể có vẻ khó khăn, nhưng nó rất đơn giản.

Đọc tiếp
Chủ đề liên quan
  • Lập trình
  • Python
Giới thiệu về tác giả Yuvraj Chandra(60 bài báo đã xuất bản)

Yuvraj là sinh viên ngành Khoa học Máy tính tại Đại học Delhi, Ấn Độ. Anh ấy đam mê Phát triển Web Full Stack. Khi không viết, anh ấy đang khám phá chiều sâu của các công nghệ khác nhau.

Xem thêm từ Yuvraj Chandra

Theo dõi bản tin của chúng tôi

Tham gia bản tin của chúng tôi để biết các mẹo công nghệ, đánh giá, sách điện tử miễn phí và các ưu đãi độc quyền!

Bấm vào đây để đăng ký