A. Mục đích nghiên cứu
Tạo, truy cập và thao tác chuỗi cơ bản.
Sử dụng các phương thức xử lý chuỗi để làm sạch, định dạng, tìm kiếm và thay thế văn bản.
Định dạng chuỗi một cách chuyên nghiệp bằng f-string và .format().
B. Nội dung nghiên cứu
Bài 9. Cơ bn v chui (String)
Bài 10. Các phương thc x lý chui thưng dùng
Bài 11. Đnh dng chui (String Formatting)
C. Bài tập tổng hợp
CHƯƠNG 4: CÁC THAO TÁC VỚI KIỂU DỮ LIỆU STRING
21
CHƯƠNG 4: Các Thao Tác Với Kiểu Dữ Liệu String
26
name = "Lan"
message = 'Chào bạn!'
multi_line = """Dòng 1
Dòng 2"""
Bài 9. Cơ bn v chui (String)
Chuỗi là dãy các ký tự (chữ, số, dấu câu, khoảng
trắng…) được đặt trong dấu nháy đơn ('...') hoặc nháy
kép ("...").
Chuỗi là immutable: không thể thay đổi ký tự trực tiếp.
\n → xuống dòng
\t → tab
\" hoặc \' → chèn dấu nháy trong chuỗi
\\ → in dấu gạch chéo ngược
a. Chuỗi là gì?
b. Tạo chuỗi
c. Ký tự đặc biệt
d. Truy cập
s = "Python"
print(s[0]) # 'P'
print(s[-1]) # 'n'
27
Bài 10. Các phương thc x lý chui thưng dùng
s.upper() → in hoa tất cả
s.lower() → in thường tất cả
s.capitalize() → viết hoa chữ cái đầu
s.title() → viết hoa đầu mỗi từ
s.split(sep) → tách thành list (mặc định tách theo
khoảng trắng)
a. Chuyn đi ch hoa/thưng: d. Tách và nối chuỗi:
"a,b,c".split(",") # ['a', 'b', 'c']
s.strip() → bỏ khoảng trắng đầu/cuối
s.lstrip(), s.rstrip() → bỏ bên trái/phải
b. Chuyn đi ch hoa/thưng: sep.join(list) → nối các phần tử list thành chuỗi
"-".join(["a", "b", "c"]) # "a-b-c"
c. Tìm kiếm và thay thế:
s.find(sub) → trả về vị trí đầu tiên của sub, hoặc -1 nếu
không tìm thấy
s.replace(old, new) → thay thế tất cả old bằng new
s.startswith(prefix), s.endswith(suffix) → kiểm tra
đầu/cuối chuỗi
s.isalpha() → chỉ chứa chữ cái
s.isdigit() → chỉ chứa chữ số
s.isalnum() → chỉ chứa chữ và số
s.isspace() → chỉ chứa khoảng trắng
e. Kim tra ni dung:
CHƯƠNG 4: Các Thao Tác Với Kiểu Dữ Liệu String
28
Bài 11. Đnh dng chui (String Formatting)
a. Phương thc .format()
CHƯƠNG 4: Các Thao Tác Với Kiểu Dữ Liệu String
b. f-string
print("Xin chào, {}! Bạn {} tuổi.".format("Lan", 14))
print("Tên: {name}, Tuổi: {age}".format(name="Nam", age=13))
name = "Lan"
age = 14
print(f"Xin chào, {name}! Bạn {age} tuổi.")
c. Đnh dng s trong f-string:
pi = 3.14159
print(f"Pi ≈ {pi:.2f}") # "Pi ≈ 3.14"
price = 123456
print(f"Giá: {price:,} VNĐ") # "Giá: 123,456 VNĐ"
29
CHƯƠNG 4: Các Thao Tác Với Kiểu Dữ Liệu String
Bài tập tổng hợp
Bài tp 1: Chun hóa h tên
Viết chương trình: Nhận một chuỗi họ tên
Trả về chuỗi có các từ viết hoa chữ cái đầu, còn lại
thường
Giữa các từ chỉ có một khoảng trắng
Bài tp 3: Kim tra mt khu mnh
Viết chương trình: Trả về True nếu mật khẩu đủ
mạnh, False nếu không
Điều kiện mạnh:
Có ít nhất 8 ký tự
Có ít nhất 1 chữ in hoa (A–Z)
Có ít nhất 1 chữ thường (a–z)
Có ít nhất 1 chữ số (0–9)
Bài tp 2: Định dng tin
Viết chương trình nhận vào một số nguyên
Trả về chuỗi có định dạng tiền Việt Nam: thêm
dấu phẩy ngăn cách hàng nghìn. Ví dụ:
1234567 → "1,234,567"
999 → "999"
1234 → “1,234”
Bài tp 4: Đếm tn sut ký t trong chui
Viết hàm nhận vào một chuỗi.
Đếm số lần xuất hiện của mỗi ký tự.
In ra từng ký tự và số lần xuất hiện.