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 iterableresult = zip()# Chuyển đổi iterator thành listresultList = list(result)print(resultList)# Truyền 2 iteratorresult = zip(numberList, strList)# Chuyển đổi iterator thành setresultSet = 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 setresultSet = set(result)print(resultSet)result = zip(numbersList, strList, numbersTuple)# Chuyển đổi thành setresultSet = 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
Bạn nên đọc
Theo Nghị định 147/2024/ND-CP, bạn cần xác thực tài khoản trước khi sử dụng tính năng này. Chúng tôi sẽ gửi mã xác thực qua SMS hoặc Zalo tới số điện thoại mà bạn nhập dưới đây:
Cũ vẫn chất
-

Build Talon DTCL mùa 7, đồ chuẩn Talon Sát Thủ Bang Hội
2 ngày -

Cách bấm dây mạng chuẩn chỉ với 3 bước
2 ngày 1 -

Cách lấy link video YouTube trên điện thoại, máy tính
2 ngày -

Cách xóa trang trắng trong Google Docs
2 ngày -

Những biệt danh hay cho bạn thân, đặt biệt danh cho bạn thân
2 ngày 53 -

Những bài học thực tế về cuộc sống giúp bạn sống tốt và ý nghĩa hơn
2 ngày -

Hàm SUBTOTAL: Tính tổng giá trị danh sách đã lọc trong Excel
2 ngày -

Cách đăng ký gói V90Z Viettel nhận 30GB
2 ngày -

Stt về bạn thân, những câu nói hay về tình bạn
2 ngày 2 -

File XML là gì và cách mở nó như thế nào?
2 ngày
Học IT
Công nghệ
Microsoft Word 2013
Microsoft Word 2007
Microsoft Excel 2019
Microsoft Excel 2016
Microsoft PowerPoint 2019
Google Sheets
Lập trình Scratch
Bootstrap
Hướng dẫn
Ô tô, Xe máy