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

Dành cho bạn