Cơ bảnKiến thức cơ bản

Các kiểu dữ liệu trong Python: int, float, string, bool

8 phút đọc13 lượt xem
#python#kiểu dữ liệu#int float string#python cơ bản#type casting

Các kiểu dữ liệu trong Python: int, float, string, bool

Python có 8 kiểu dữ liệu cơ bản — int, float, str, bool, list, tuple, dict, set — và mỗi kiểu phù hợp với một loại dữ liệu khác nhau. Hiểu rõ chúng là bước không thể bỏ qua khi mới học Python.

Điểm tiện lợi: không như Java hay C, Python 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). Dùng hàm type() để xem kiểu của bất kỳ giá trị nào:

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

str lưu văn bản — bất kỳ chuỗi ký tự nào đặ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 — cách ghép chuỗi phổ biến nhất hiện nay
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 hay dùng
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 hoặc False. Thường xuất hiện trong câu lệnh điều kiện và các phép so sánh.

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

# Dùng 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

Khi cần lưu nhiều giá trị cùng lúc, Python có 4 kiểu tập hợp chính:

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

Python cho phép chuyển đổi giữa các kiểu bằng cách gọi tên kiểu như một hàm:

# 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ế: input() luôn trả về str
user_age = input("Nhập tuổi: ")  # luôn là str
age = int(user_age)              # chuyển sang int mới tính toán được
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ố địnhImmutable
dict{"a": 1}Từ điển key-valueMutable
set{1, 2, 3}Tập hợp không trùngMutable
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.7
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.6
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.6
Xem khóa học →

*Đây là liên kết liên kết (affiliate link). Chúng tôi có thể nhận hoa hồng nếu bạn mua khóa học qua liên kết này.