Khi cần khởi tạo tuple với các tham số cụ thể, có thể sử dụng phương thức tuple() và toán tử *.
Phương thức tuple() sẽ chuyển đổi iterable được truyền vào thành kiểu dữ liệu tuple.
Toán tử * có thể dùng để nhân một giá trị đơn lẻ nhiều lần (lặp lại giá trị).
Ví dụ
# Khởi tạo các tham số
N = 6
print(f"Giá trị N được khởi tạo: {N}")
default_val = 2
print(f"Giá trị mặc định: {default_val}")
index = 3
print(f"Chỉ số index: {index}")
val_to_add = 6
print(f"Giá trị cần thêm tại index: {val_to_add}")
# Tạo list với giá trị mặc định lặp lại N lần
my_result = [default_val] * N
print(f"List ban đầu: {my_result}")
# Thay đổi giá trị tại vị trí index
my_result[index] = val_to_add
print(f"List sau khi thay đổi tại index {index}: {my_result}")
# Chuyển đổi sang tuple
my_result = tuple(my_result)
print(f"\nTuple kết quả: {my_result}")
Kết quả
Giá trị N được khởi tạo: 6 Giá trị mặc định: 2 Chỉ số index: 3 Giá trị cần thêm tại index: 6 List ban đầu: [2, 2, 2, 2, 2, 2] List sau khi thay đổi tại index 3: [2, 2, 2, 6, 2, 2] Tuple kết quả: (2, 2, 2, 6, 2, 2)
Giải thích
- Khởi tạo các giá trị:
N(kích thước),default_val(giá trị lặp),index(vị trí thay đổi),val_to_add(giá trị mới). - Sử dụng
[default_val] * Ntạo list cóNphần tử cùng giá trịdefault_val. - Gán
val_to_addvào vị tríindexcủa list. - Chuyển list thành tuple bằng
tuple(). - Tuple là bất biến (immutable), nên sau khi tạo không thể thay đổi phần tử.
Các cách khởi tạo tuple khác
# Tuple từ các giá trị riêng lẻ t1 = (1, 2, 3) # Tuple từ list t2 = tuple([4, 5, 6]) # Tuple đơn phần tử (cần dấu phẩy) t3 = (7,) # Tuple rỗng t4 = () # Sử dụng * để unpack t5 = (*t1, *t2) # (1, 2, 3, 4, 5, 6)