Biến và kiểu dữ liệu trong Python
Kiến thức về biến và kiểu dữ liệu là phần rất quan trọng trong kỹ năng lập trình. Các bạn cần nắm rõ phần này để có thể lập trình dể dàng hơn và tránh một số lỗi cơ bản về dữ liệu trong Python.
Khái niệm biến
Biến là đại diện cho việc lưu trữ dữ liệu trên bộ nhớ. Biến được tạo ra khi bạn khai báo một biến, lúc đó một ô bộ nhớ được tạo ra. 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 nhận kiểu dữ liệu ngay lúc đầu, việc này sẽ được tự động khi bạn gán giá trị cho biến đó.
Để gán một trá trị cho biến, ta dùng toán tử “=”.
Ví dụ
1
2
3
4
5
|
#!/usr/bin/python bien = 320 # An integer assignment km = 300.0 # A floating point name = "Bambo" # A string |
Gán một giá trị cho nhiều biến
a = b = c = d = 99
Ví dụ trên thực hiện gán giá trị là 99 cho 4 biến a, b, c và d trên một dòng lệnh.
a, b, c = 1, 3 , "Bambo"
Ví dụ trên thực hiện gán giá trị 1, 3 lần lượt cho 2 biến interger a và b, và gán giá trị “Bambo” cho biến string c.
Kiểu dữ liệu
Python đã định nghĩa ra 5 kiểu dữ liệu chuẩn cho việc vận hành các phương thức và lưu trữ biến trong lập trình:
- Numers
- String
- List
- Tuple
- Dictionary
Numbers
Kiểu dữ liệu numbers chứa giá trị là các chữ số, biến được nhận dạng kiểu number khi ta gán giá trị cho biến là một số bất kỳ.
Ví dụ
1
2
3
4
5
6
|
var1 = 1 var2 = 10 Để xóa biến hay hủy biến: del var1[,var2[,var3[....,varN]]]] del var del var_a, var_b |
Python hỗ trợ 4 kiểu dữ liệu numbers khác nhau:
- Int (số nguyên)
- long (số nguyên lớn, có thể dưới dạng bát phân hoặc thập lục phân)
- float (số thực)
- complex (số phức)
Ví dụ:
int | long | float | complex |
5 | 5124361L | 0.0 | 3.14j |
100 | -0x112443L | 12.20 | 45.j |
-356 | 0112L | -22.9 | 2.322e-36j |
030 | 0xDEFBDAECBAEl | 12.3+e18 | .676j |
-0120 | 12629843L | -70. | -.6545+0J |
-0x130 | -05231335735L | -12.54e100 | 3e+26J |
0x69 | -125485298529L | 60.2-E12 | 2.53e-7j |
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ụ
1
2
3
|
#!/usr/bin/python str = 'Hello Python!' str = "Hello Bambo!" |
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ụ
1
2
|
#!/usr/bin/python list = [ 'Bambo' , 12 , 3.15 , 'Python' ] |
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ụ:
1
2
|
#!/usr/bin/python tuple = ( 'Bambo' , 12 , 3.15 , 'Python' ) |
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ụ:
1
2
3
|
#!/usr/bin/python tuple = ( 'Bambo' , 12 , 3.15 , 'Python' ) 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ưở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ụ
1
2
3
4
5
|
#!/usr/bin/python dict = { 'name' : 'Bambo' , '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
1
2
3
|
{ 'name' : 'Bambo' , 'id' : 15 , 'age' : 22 } dict_keys([ 'name' , 'id' , 'age' ]) dict_values([ 'Bambo' , 15 , 22 ]) |
Chuyển đổi dữ liệu
Trong một số trường hợp bạn cần chuyển đổi dữ liệu của biến nhằm đảm bảo dữ liệu sẽ đúng đắn cho một thao tác nào đó (gán cho biến khác, in ra màn hình, cộng với biến khác, … ). Để thực hiện điều này, bạn chỉ cần sử dụng một số hàm chuyển đổi có sẵn mà Python đã cung cấp.
Hàm | Chức năng |
int(x [,base]) | Hàm chuyển đổi x thành một số nguyên |
long(x [,base] ) | Hàm chuyển đổi x thành một long int |
float(x) | Hàm chuyển đổi x thành một số thực |
complex(real [,imag]) | Hàm chuyển đổi x thành một số phức |
str(x) | Hàm chuyển đổi x thành một chuỗi |
repr(x) | Hàm chuyển đổi đối tượng x thành một chuỗi biểu thức |
eval(str) | Ước lượng một chuỗi và trả về một đối tượng |
tuple(x) | Hàm chuyển đổi x thành một Tuple |
list(x) | Hàm chuyển đổi x thành một List |
set(x) | Hàm chuyển đổi x thành một Set |
dict(d) | Tạo một Dictionary. Trong đó d là một dãy các Tuple cặp (key, value) |
chr(x) | Hàm chuyển đổi một số nguyên x thành một ký tự |
unichr(x) | Hàm chuyển đổi một số nguyên x thành một ký tự Unicode |
ord(x) | Hàm chuyển đổi một ký tự đơn thành giá trị nguyên của nó |
hex(x) | Hàm chuyển đổi một số nguyên thành một chuỗi thập lục phân |
oct(x) | Hàm chuyển đổi một số nguyên thành một chuỗi bát phân |
By:HourOfCode