Hàm zip() trong Python
Hàm zip() trong Python trả về một đối tượng zip, là một iterator dạng danh sách các tuple kết hợp các phần tử từ các iterator (được tạo thành từ các iterable) khác.
Cú pháp hàm zip() trong Python
zip(*iterable)
(Iterable là một đối tượng sau khi sử dụng các phương thức sẽ trả về một iterator, ví dụ như Chuỗi, List, Tuple).
Tham số của hàm zip()
Hàm zip() trong Python có tham số:
- iterable: các iterable được tích hợp sẵn (như list, string, dict) hoặc iterable do người dùng khai báo (được tạo thành từ phương thức __iter__)
Đọc thêm về Đối tượng Iterator trong Python.
Giá trị trả về từ zip()
Hàm zip () trả về một iterator của các bộ dữ liệu tuple dựa trên iterable object.
- Nếu không có tham số nào được truyền, zip() trả về một iterator rỗng.
- Nếu tham số được truyền chỉ có duy nhất một iterable, zip() trả về tuple có 1 phần tử.
- Nếu tham số được truyền có nhiều iterable và độ dài của các iterable không bằng nhau, zip sẽ tạo các tuple có độ dài bằng với số iterable nhỏ nhất.
Cách sử dụng zip()
Ví dụ 1: Cách zip() hoạt động trong Python
numberList = [1, 2, 3]
strList = ['one', 'two', 'three']
# Không truyền iterable
result = zip()
# Chuyển đổi iterator thành list
resultList = list(result)
print(resultList)
# Truyền 2 iterator
result = zip(numberList, strList)
# Chuyển đổi iterator thành set
resultSet = set(result)
print(resultSet)
Chạy chương trình, kết quả trả về là:
[]
{(2, 'two'), (3, 'three'), (1, 'one')}
Ví dụ 2: Các iterator có số phần tử khác nhau
numbersList = [1, 2, 3]
strList = ['one', 'two']
numbersTuple = ('ONE', 'TWO', 'THREE', 'FOUR')
result = zip(numbersList, numbersTuple)
# Chuyển đổi thành set
resultSet = set(result)
print(resultSet)
result = zip(numbersList, strList, numbersTuple)
# Chuyển đổi thành set
resultSet = set(result)
print(resultSet)
Chạy chương trình, kết quả trả về là:
{(2, 'TWO'), (3, 'THREE'), (1, 'ONE')}
{(2, 'two', 'TWO'), (1, 'one', 'ONE')}
Toán tử * có thể được sử dụng cùng với zip() để giải nén danh sách.
Ví dụ 3: Giải nén giá trị bằng cách sử dụng zip()
coordinate = ['x', 'y', 'z']
value = [3, 4, 5, 0, 9]
result = zip(coordinate, value)
resultList = list(result)
print(resultList)
c, v = zip(*resultList)
print('c =', c)
print('v =', v)
Chạy chương trình, kết quả trả về là:
[('x', 3), ('y', 4), ('z', 5)]
c = ('x', 'y', 'z')
v = (3, 4, 5)
Xem thêm: Các hàm Python tích hợp sẵn
16.847
Bạn nên đọc
0 Bình luận
Sắp xếp theo
Xóa Đăng nhập để Gửi
Cũ vẫn chất
-
Hướng dẫn cách chơi, lên đồ Natalya mùa S1 2023
Hôm qua -
Tổng hợp cách tạo mật khẩu mạnh và quản lý mật khẩu an toàn nhất
Hôm qua -
Căn bậc 2, cách tính căn bậc 2
Hôm qua -
Bitcoin là gì? Tại sao Bitcoin không phải là "tiền ảo"?
Hôm qua -
Cách đổi công cụ tìm kiếm trên Safari
Hôm qua -
Cách tạo brush tùy chỉnh trong Photoshop
Hôm qua -
15 cách chỉnh độ sáng màn hình máy tính, laptop
Hôm qua -
Tổng hợp câu hỏi Nhanh như chớp mùa 2
Hôm qua -
Cách dọn dẹp và khôi phục không gian trên ổ C Windows
Hôm qua -
Hướng dẫn chơi Rung Cây vàng Trúng Cây vàng trên My Viettel
Hôm qua