Khóa học python

Join Tuples trong Python

0 phút đọc

Trong Python, có nhiều cách để kết hợp (join) các tuples lại với nhau. Dưới đây là một số phương pháp phổ biến:

Sử dụng toán tử +

Toán tử + là cách đơn giản và phổ biến nhất để kết hợp hai hoặc nhiều tuples.

python Copy
tuple1 = ("a", "b", "c")
tuple2 = (1, 2, 3)
tuple3 = tuple1 + tuple2
print(tuple3)  # Output: ('a', 'b', 'c', 1, 2, 3)

Sử dụng hàm sum()

Hàm sum() có thể được sử dụng để kết hợp các tuples. Tuy nhiên, bạn cần cung cấp một tuple rỗng làm tham số khởi đầu.

python Copy
tuple1 = (10, 20, 30)
tuple2 = ('one', 'two', 'three')
tuple3 = sum((tuple1, tuple2), ())
print(tuple3)  # Output: (10, 20, 30, 'one', 'two', 'three')

Sử dụng phương thức extend()

Phương thức extend() không thể được sử dụng trực tiếp trên tuples vì chúng là bất biến. Tuy nhiên, bạn có thể chuyển đổi tuples thành danh sách, sử dụng extend(), và sau đó chuyển đổi lại thành tuple.

python Copy
tuple1 = (10, 20, 30)
tuple2 = ('one', 'two', 'three')
list1 = list(tuple1)
list2 = list(tuple2)
list1.extend(list2)
tuple3 = tuple(list1)
print(tuple3)  # Output: (10, 20, 30, 'one', 'two', 'three')

Sử dụng List Comprehension

List comprehension có thể được sử dụng để kết hợp các phần tử của nhiều tuples thành một tuple mới.

python Copy
tuple1 = (10, 20, 30)
tuple2 = ('one', 'two', 'three')
tuple3 = tuple([x for t in (tuple1, tuple2) for x in t])
print(tuple3)  # Output: (10, 20, 30, 'one', 'two', 'three')

Sử dụng vòng lặp for

Bạn có thể sử dụng vòng lặp for để duyệt qua các phần tử của tuples và kết hợp chúng lại.

python Copy
tuple1 = (10, 20, 30)
tuple2 = ('one', 'two', 'three')
result = ()
for item in tuple1:
    result += (item,)
for item in tuple2:
    result += (item,)
print(result)  # Output: (10, 20, 30, 'one', 'two', 'three')

Kết hợp Tuples trong danh sách các Tuples

Đôi khi, bạn có thể cần kết hợp các tuples trong một danh sách các tuples. Dưới đây là một số phương pháp để thực hiện điều này.

1. Sử dụng List Comprehension

python Copy
test_list = [([1, 2, 3], 'gfg'), ([5, 4, 3], 'cs')]
res = [(tup1, tup2) for i, tup2 in test_list for tup1 in i]
print(res)  # Output: [(1, 'gfg'), (2, 'gfg'), (3, 'gfg'), (5, 'cs'), (4, 'cs'), (3, 'cs')]

2. Sử dụng vòng lặp lồng nhau

python Copy
test_list = [([1, 2, 3], 'gfg'), ([5, 4, 3], 'cs')]
res = []
for i, tup2 in test_list:
    for tup1 in i:
        res.append((tup1, tup2))
print(res)  # Output: [(1, 'gfg'), (2, 'gfg'), (3, 'gfg'), (5, 'cs'), (4, 'cs'), (3, 'cs')]

Kết hợp Tuples với các phần tử khác

1. Kết hợp các phần tử của tuple thành một chuỗi với dấu phân cách

Bạn có thể sử dụng phương thức join() để kết hợp các phần tử của một tuple thành một chuỗi với dấu phân cách.

python Copy
test_tup = ("Gfg", "is", 4, "Best")
delim = "-"
res = delim.join(str(ele) for ele in test_tup)
print(res)  # Output: Gfg-is-4-Best

2. Kết hợp các phần tử của tuple thành số nguyên

Bạn có thể kết hợp các phần tử của một tuple thành số nguyên bằng cách sử dụng các hàm map(), join(), và int().

python Copy
test_list = [(4, 5), (5, 6), (1, 3), (6, 9)]
res = [int(''.join(map(str, idx))) for idx in test_list]
print(res)  # Output: [45, 56, 13, 69]

Kết luận

Tuples là một cấu trúc dữ liệu mạnh mẽ và hữu ích trong Python, đặc biệt khi bạn cần lưu trữ các nhóm dữ liệu không thay đổi. Việc hiểu và sử dụng các phương pháp để kết hợp các tuples sẽ giúp bạn làm việc hiệu quả hơn với loại dữ liệu này. Hy vọng bài viết này đã cung cấp cho bạn một cái nhìn tổng quan và chi tiết về cách kết hợp các tuples trong Python.

Avatar
Được viết bởi

Admin Team

Gợi ý câu hỏi phỏng vấn

Không có dữ liệu

Không có dữ liệu

Gợi ý bài viết
Không có dữ liệu

Không có dữ liệu

Bình luận

Chưa có bình luận nào

Chưa có bình luận nào