Giới thiệu
Trên con đường trở thành một lập trình viên, biến là một khái niệm chắc chắn rằng bạn cần phải biết dù cho bạn có theo loại ngôn ngữ lập trình nào đi nữa. Python cũng không ngoại lệ, như các ngôn ngữ lập trình khác, trong Python tồn tại khái niệm về biến và kiểu dữ liệu của biến. Bài viết này, tôi xin giới thiếu sơ lược qua về biến và kiểu dữ liệu của biến trong Python.
Biến
Khái niệm biến
Hiểu một cách đơn giản thì biến là bộ nhớ dành để lưu trữ dữ liệu. Nó có nghĩa khi bạn khai báo một biến thì bạn sử dụng một phần của bộ nhớ. Giá trị của biến có thể thay đổi như tên gọi của nó. Tùy vào các kiểu dữ liệu mà bộ nhớ được cấp phát khác nhau, một biến có thể là int, string, float, list, ...
Gán giá trị cho biến
Trong Python, biến không được xác định rõ ràng kiểu dữ liệu khi ta chưa gán giá trị cho nó. Việc xác định giá trị của biến tự động xảy ra khi nó được gán cho một giá trị nào đó.
Để gán một trá trị cho biến, ta dùng toán tử "=".
Ví dụ
#!/usr/bin/python
counter = 100 # integer
distance = 1000.0 # float
name = "Mido" # string
Python còn cho phép cùng lúc có thể gán một giá trị cho nhiều biến.
Ví dụ
a = b = c = 1
Ví dụ trên tôi thực hiện gán giá trị là 1 cho 3 biến a, b và c. Không những thế, ta cũng có thể gán các giá trị khác nhau cho các biến khác nhau cùng lúc.
Ví dụ:
a, b, c = 1, 3 , "Mido"
Ví dụ trên thực hiện gán giá trị 1, 3 lần lượt cho 3 biến interger a và b. Đồng thời cũng gán giá trị "Mido" cho biến string c.
Kiểu dữ liệu
Các kiểu dữ liệu chuẩn trong Python
Trong Python có 5 kiểu dữ liệu chuẩn là:
- Numers
- String
- List
- Tuple
- Dictionary
Sau đây tôi xin nói sơ qua về 5 loại dữ liệu đã nêu trên. Tuy nhiên ở các bài viết sau tôi cũng sẽ trình bày rõ vấn đề cho từng kiểu dữ liệu.
Numbers
Kiểu dữ liệu numbers chứa giá trị là một con số, nó được tạo ra khi ta gán các giá trị là một con số cho biến đó.
Ví dụ
a = 1
b = 2
Python hỗ trợ 4 kiểu dữ liệu numbers khác nhau:
- int
- long
- float
- complex
- Strings
Kiểu dữ liệu strings được xác định khi giá trị được gán cho nó nằm giữa cặp dấu ' ' hoặc " ".
Ví dụ
#!/usr/bin/python
str = 'Hello Python!'
str = "Hello Stdio!"
Lists
Lists trong Python là một kiểu dữ liệu phức hợp linh hoạt, Lists chứa những phần tử được ngăn cách nhau bởi dấu "," và nằm trong cặp dấu ngoặc vuông "[ ]". Theo một vài đánh giá thì Lists trong Python gần giống với Array trong C, sự khác biệt chính là các phần tử của Lists có thể tồn tài nhiều kiểu dữ liệu khác nhau.
Ví dụ
#!/usr/bin/python
list = ['Mido', 12, 3.15, 'Stdio']
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')
Lưu ý
Ngoài điểm khác nhau nêu trên giữa Lists và Tuples thì còn một điểm khác nhau lớn nữa đó là: Các phần tử và độ lớn của Lists có thể cập nhật nhưng với Tuples thì không.
Ví dụ:
#!/usr/bin/python
tuple = ('Mido', 12, 3.15, 'Stdio')
tuple[1] = 15 # Khong hop le!
Ví dụ trên tôi cố tính thực hiện thay đổi phần tử thứ 2 trong tuple và điều này là không hợp lệ.
Dictionary
Lấy tư tưởng từ cuốn từ điển trong đời sống hằng ngày, kiểu dữ liệu Dictionary trong Python gồm nhiều bộ (key, value) có key khác nhau. Key trong Dictionary có thể là số, string hoặc tuple. Dictionary mặc định hỗ trợ lập trình viên thêm, sửa, xóa các bộ (key, value) đó.
Ví dụ:
#!/usr/bin/python
dict = {'name': 'Mido', 'id': 15, 'age': 22}
print (dict) # Prints complete dictionary
print (dict.keys()) # Prints all the keys
print (dict.values()) # Prints all the values
Kết quả in ra màn hình
{'name': 'Mido', 'id': 15, 'age': 22}
dict_keys(['name', 'id', 'age'])
dict_values(['Mido', 15, 22])