Khi cần nhân các phần tử liền kề trong tuple, có thể sử dụng phương thức zip, phương thức tuple và biểu thức generator (tạo sinh).
Phương thức zip nhận các iterable, gộp chúng thành tuple và trả về kết quả.
Generator là cách đơn giản để tạo iterator. Nó tự động triển khai lớp với các phương thức __iter__() và __next__(), theo dõi trạng thái nội bộ và ném ngoại lệ StopIteration khi không còn giá trị nào để trả về.
Dưới đây là ví dụ minh họa:
Ví dụ
my_tuple_1 = (7, 8, 0, 3, 45, 3, 2, 22)
print("Tuple là:")
print(my_tuple_1)
my_result = tuple(i * j for i, j in zip(my_tuple_1, my_tuple_1[1:]))
print("Tuple sau khi nhân các phần tử liền kề:")
print(my_result)Kết quả
Tuple là: (7, 8, 0, 3, 45, 3, 2, 22) Tuple sau khi nhân các phần tử liền kề: (56, 0, 0, 135, 135, 6, 44)
Giải thích
- Định nghĩa một tuple và hiển thị trên bảng điều khiển.
- Sử dụng
zipđể ghép tuple với chính tuple đó nhưng bỏ qua phần tử đầu tiên, sau đó duyệt qua và nhân các phần tử tương ứng. - Gán kết quả cho một biến.
- Hiển thị kết quả đầu ra trên bảng điều khiển.