Nhắc lại về tuples
Tuples là một kiểu dữ liệu tương tự như với Lists. Các phần tử trong Tuples cũng được ngăn cách nhau bởi dấu ",". Tuy nhiên, không giống với Lists, Tuples mở đầu và kết thúc với dấu ngoặc đơn "( )".
Ví dụ
#!/usr/bin/python
tuple = ('Mido', 12, 3.15, 'Stdio')
Tuy nhiên, bạn cũng có thể bỏ đi dấu ngoặc đơn đi, python vẫn hiểu đây là một tuples.
Ví dụ
#!/usr/bin/python
tuple = "stdio", "python", 2 , 4
Một tuples rỗng được tạo ra khi gán cho một cặp dấu ngoặc đơn và bên trong không chứa giá trị nào.
Ví dụ
#!/usr/bin/python
tuple =()
Trường hợp tuples chỉ có 1 phần tử thì bên sau phần tử đó phải có dấu phẩy. Nếu không nó sẽ hiểu đây là một kiểu int.
Ví dụ
#!/usr/bin/python
tuple = (2, ) # type tuples
tuple = (2) # type int
Truy cập các phần tử bên trong tuples
Việc truy cập các phần tử bên trong tuples tương tự như lists.
Ví dụ
#!/usr/bin/python
tuple = ('Mido', 12, 3.15, 'Stdio')
print (tuple[0])
print (tuple[1:3])
print (tuple[1:])
print (tuple[:2])
print (tuple[1::2])
Kết quả in ra màn hình
Mido
(12, 3.15)
(12, 3.15, 'Stdio')
('Mido', 12)
(12, 'Stdio')
Giải thích
- Dòng 1: Truy xuất đến một phần tử trong tuples, ở đây index = 0 tương ứng với phần tử đầu tiền trong tuples.
- Dòng 2: Truy xuất một tuples con bắt đầu từ phần tử thứ 2 (ứng với index = 1) đến phần tử thứ 4 (ứng với index = 3).
- Dòng 3: Index thứ 2 không được khai báo sẽ có giá trị mặc định là bằng với chiều dài của tuples.
- Dòng 4: Index đầu tiên không được khai báo sẽ có giá trị mặc định là 0.
- Dòng 5: Index thứ 3 xuất hiện tương đương với bước nhảy khi trích xuất một tuples, bình thường giá trị mặc định sẽ là 1.
Tuples bên trong tuples
Các phần tử bên trong tuples có thể mang nhiều kiểu dữ liệu khác nhau. Có thể là int, float, strings, ... thậm chí là một tuples.
Ví dụ
#!/usr/bin/python
tuple = ('Mido', (12, 3.15), 'Stdio')
print (tuple[1])
print (tuple[1][1])
Kết quả in ra màn hình
(12, 3.15)
3.15
Cập nhật giá trị cho các phần tử trong tuples
Khác với lists, tuples không cho phép bạn thay đổi giá trị bên trong nó, kể cả độ dài của nó.
Ví dụ
#!/usr/bin/python
tuple = ('Mido', (12, 3.15), 'Stdio')
tuple[1] = 'Mido Lê' #False
print (tuple)
Kết quả in ra màn hình
Traceback (most recent call last):
File "C:\Users\Mido\Desktop\demo.py", line 4, in <module>
tuple[1] = 'Mido Lê'
TypeError: 'tuple' object does not support item assignment
Một số hàm thông dụng
Hàm len
Hàm len trả về độ dài (hoặc số lượng phần tử) của tuples.
Ví dụ
#!/usr/bin/python
tuple = ('Mido', 12, 3.15, 'Stdio')
print (len(tuple))
Kết quả in ra màn hình
4
Hàm max
Trả về phần tử có giá trị lớn nhất trong tuples.
Ví dụ
#!/usr/bin/python
tuple1 = (1, 9, 2, 5)
tuple2 = ('a', 's', 'b', 'e')
print (max(tuple1))
print (max(tuple2))
Kết quả in ra màn hình
9
s
Hàm min
Trả về phần tử có giá trị nhỏ nhất.
#!/usr/bin/python
tuple1 = (1, 3, 2, 5)
tuple2 = ('a', 's', 'b', 'e')
print (min(tuple1))
print (min(tuple2))
Kết quả in ra màn hình
1
a