Cơ bảneducational

Các kiểu dữ liệu trong Python: int, float, string, bool đầy đủ nhất

8 phút đọc0 lượt xem
#python#kiểu dữ liệu#int#float#string#bool#list#dict

Các kiểu dữ liệu trong Python: int, float, string, bool đầy đủ nhất

Khi học lập trình Python, một trong những điều đầu tiên bạn cần hiểu là kiểu dữ liệu (data type). Kiểu dữ liệu xác định loại thông tin mà biến có thể lưu trữ và những phép toán nào có thể thực hiện trên đó.

Bài viết này sẽ giới thiệu tất cả các kiểu dữ liệu cơ bản trong Python: int, float, string, bool và các kiểu tập hợp như list, dict, set.

Kiểu dữ liệu trong Python là gì?

Mỗi giá trị trong Python đều có một "loại" – gọi là kiểu dữ liệu. Python có thể tự động nhận biết kiểu dữ liệu mà không cần bạn khai báo tường minh (dynamic typing).

Để kiểm tra kiểu dữ liệu của một biến, dùng hàm type():

print(type(42))       # <class 'int'>
print(type(3.14))     # <class 'float'>
print(type("hello"))  # <class 'str'>
print(type(True))     # <class 'bool'>

Kiểu số nguyên: int

int (integer) dùng để lưu các số nguyên – không có phần thập phân.

age = 22
year = 2026
score = -5
big_number = 1_000_000  # Dấu _ giúp đọc dễ hơn

print(age)         # 22
print(type(age))   # <class 'int'>

# Phép toán với int
print(10 + 3)   # 13
print(10 - 3)   # 7
print(10 * 3)   # 30
print(10 // 3)  # 3 (chia lấy phần nguyên)
print(10 % 3)   # 1 (lấy phần dư)
print(2 ** 10)  # 1024 (lũy thừa)

Kiểu số thực: float

float dùng để lưu các số có phần thập phân.

price = 199.99
pi = 3.14159
temperature = -2.5

print(type(price))  # <class 'float'>

# Phép toán với float
print(1.5 + 2.5)    # 4.0
print(10.0 / 3)     # 3.3333...
print(round(3.14159, 2))  # 3.14 (làm tròn)

Lưu ý: Phép chia / trong Python luôn trả về float dù chia hết hay không:

print(10 / 2)   # 5.0 (float, không phải 5)
print(10 // 2)  # 5 (int, chia lấy phần nguyên)

Kiểu chuỗi: str (string)

str dùng để lưu văn bản – bất kỳ chuỗi ký tự nào được đặt trong dấu nháy đơn '...' hoặc nháy kép "...".

name = "Nguyễn An"
greeting = 'Xin chào!'
address = "123 Nguyễn Huệ, TP.HCM"

# F-string (ES6 template literal của Python)
age = 22
intro = f"Tôi là {name}, {age} tuổi"
print(intro)  # "Tôi là Nguyễn An, 22 tuổi"

# Các thao tác cơ bản
print(len(name))          # 9 (số ký tự)
print(name.upper())       # NGUYỄN AN
print(name.lower())       # nguyễn an
print(name[0])            # N (ký tự đầu tiên)
print(name[-1])           # n (ký tự cuối cùng)
print("An" in name)       # True (kiểm tra chuỗi con)
print(name.replace("An", "Bình"))  # Nguyễn Bình

Kiểu logic: bool

bool chỉ có 2 giá trị: True (đúng) hoặc False (sai). Thường dùng trong câu lệnh điều kiện.

is_student = True
has_job = False

# Các phép so sánh trả về bool
print(10 > 5)    # True
print(10 == 10)  # True
print(10 != 5)   # True
print(10 < 5)    # False

# bool trong điều kiện if
age = 18
if age >= 18:
    print("Đủ tuổi bầu cử")
else:
    print("Chưa đủ tuổi")

Kiểu tập hợp: list, tuple, dict, set

Python còn có các kiểu dữ liệu phức tạp hơn để lưu nhiều giá trị:

list – Danh sách

fruits = ["táo", "chuối", "xoài"]
fruits.append("cam")       # thêm phần tử
print(fruits[0])           # "táo" (truy cập theo index)
print(len(fruits))         # 4

tuple – Bộ giá trị cố định

point = (10.8, 106.6)      # tọa độ GPS
# point[0] = 11.0  # Lỗi! tuple không thể thay đổi

dict – Từ điển key-value

person = {
    "name": "Nguyễn An",
    "age": 22,
    "city": "HCM"
}
print(person["name"])  # "Nguyễn An"

set – Tập hợp không trùng lặp

numbers = {1, 2, 3, 3, 2, 1}
print(numbers)  # {1, 2, 3} – tự động loại bỏ trùng

Chuyển đổi kiểu dữ liệu (Type Casting)

Python cho phép bạn chuyển đổi giữa các kiểu dữ liệu:

# str → int
age_text = "22"
age = int(age_text)    # 22

# int → float
price = float(100)     # 100.0

# int → str
year_str = str(2026)   # "2026"

# Ví dụ thực tế: nhận input từ người dùng
user_age = input("Nhập tuổi: ")  # luôn là str
age = int(user_age)              # chuyển sang int để tính toán
print(f"Sau 10 năm, bạn {age + 10} tuổi")

Bảng tổng hợp kiểu dữ liệu Python

KiểuVí dụMô tảCó thể thay đổi?
int42, -10, 0Số nguyênN/A
float3.14, -0.5Số thựcN/A
str"hello", 'world'Chuỗi ký tự❌ Immutable
boolTrue, FalseGiá trị logicN/A
list[1, 2, 3]Danh sách có thứ tự✅ Mutable
tuple(1, 2, 3)Danh sách cố định❌ Immutable
dict{"a": 1}Từ điển key-value✅ Mutable
set{1, 2, 3}Tập hợp không trùng✅ Mutable
NoneNoneKhông có giá trịN/A

Bài viết liên quan

Về tác giả

Ảnh đại diện tác giả Kenji — họa tiết hình học

Kenji

Kỹ sư phần mềm full-stack (Web), hơn 5 năm kinh nghiệm thực tế

  • Python
  • DB
  • Hạ tầng
  • Đào tạo & cố vấn
  • AI

Làm việc cùng đồng nghiệp người Việt, tôi thấy thiếu tài liệu kỹ thuật rõ ràng bằng tiếng Việt. codeahoc là nơi tôi chia sẻ theo hướng thực tế, dễ áp dụng.

Nguyên tắc nội dung

  • Ưu tiên nguồn gốc và góc nhìn từ thực tế triển khai.
  • Nếu có sai sót, nội dung sẽ được cập nhật và sửa kịp thời.

Khóa học liên quan

100 Days of Code: The Complete Python Pro Bootcamp

Học Python qua 100 dự án thực tế. Phù hợp cho người mới bắt đầu.

4.7499.000 ₫
Xem khóa học →

Python for Data Science and Machine Learning Bootcamp

Học Data Science với Python: pandas, matplotlib, scikit-learn.

4.6499.000 ₫
Xem khóa học →

Automate the Boring Stuff with Python

Tự động hóa công việc lặp đi lặp lại bằng Python.

4.6399.000 ₫
Xem khóa học →
Quảng cáo