BÀI 25: MỘT SỐ LỆNH LÀM VIỆC VỚI XÂU KÝ TỰ

 

BÀI 25: MỘT SỐ LỆNH LÀM VIỆC VỚI XÂU KÝ TỰ

A. YÊU CẦU CẦN ĐẠT

  • Hiểu được xâu ký tự là một kiểu dữ liệu quan trọng trong Python.
  • Biết cách sử dụng các lệnh thao tác với xâu ký tự như kiểm tra xâu con, tìm vị trí xâu con, tách và nối xâu.


B. NỘI DUNG BÀI HỌC

1. XÂU CON VÀ LỆNH TÌM VỊ TRÍ XÂU CON

Ví dụ 1: Dùng toán tử in để kiểm tra một xâu có là xâu con của xâu khác không

print("abc" in "123abc") # True print("010" in "1101") # False
  • Biểu thức kiểm tra <xâu 1> in <xâu 2> sẽ trả lại giá trị True nếu <xâu 1> là xâu con của <xâu 2>, ngược lại trả lại False.

Ví dụ 2: Lệnh find() tìm vị trí xuất hiện của một xâu trong xâu khác

s = "ab bc cd 123 456 00"
print(s.find("b"))  # 1
print(s.find("12"))  # 9
print(s.find("AB"))  # -1 (Không tìm thấy)
  • Cú pháp:
  -  Một số lệnh đặc biệt dành riêng cho xâu tự (phương thức). Cách thực hiện phương thức là:

<xâu>. <phương thức>

-  pháp đơn của lệnh find ( ):     <xâu mẹ>. find (<xâu con>)

Lệnh sẽ tìm vị trí đầu tiên của xâu con trong xâu mẹ trả về vị trí đó. Nếu không tìm thấy thì trả về -1.

-  pháp đầy đủ của lệnh find ( ): <xâu mẹ>. find (<xâu con>, start)

Ví dụ 3:

sub = "Đà Nẵng" s = "Hà Nội – Đà Nẵng – Hồ Chí Minh" print(s.find(sub)) # 9 print(s.find(sub, 10)) # -1 (Không tìm thấy từ vị trí 10)
Ghi nhớ:
  • Toán tử in và lệnh find() giúp kiểm tra và xác định vị trí của một xâu trong xâu khác.

2. MỘT SỐ LỆNH THƯỜNG DÙNG VỚI XÂU KÝ TỰ

Ví dụ 1: Lệnh split() tách một xâu thành danh sách các từ

s = "Tiên học lễ hậu học văn" print(s.split()) # ["Tiên", "học", "lễ", "hậu", "học", "văn"] st = "0,1,2,3,4,5,6,10" print(st.split(",")) # ["0", "1", "2", "3", "4", "5", "6", "10"]
  • Cú pháp: xâu_mẹ.split(kí_tự_cách).

Ví dụ 2: Lệnh join() nối danh sách gồm các từ thành một xâu

A = ["Tiên", "học", "lễ", "hậu", "học", "văn"] print(" ".join(A)) # "Tiên học lễ hậu học văn" B = ["0", "1", "2", "3", "4", "5", "6", "10"] print(",".join(B)) # "0,1,2,3,4,5,6,10"

  • join() là phương thức ngược với split(), giúp nối các phần tử của danh sách thành một xâu.
  • Cú pháp: "kí tự nối".join(danh_sách).

Ghi nhớ:

  • split() dùng để tách xâu thành danh sách các từ.
  • join() dùng để nối danh sách các từ thành một xâu.


C. CỦNG CỐ - VẬN DỤNG

Thực hành

Nhiệm vụ 1: Viết chương trình nhập nhiều số nguyên từ bàn phím, các số cách nhau bởi dấu cách. Khi nhập xong, thông báo số lượng các số đã nhập và in chúng thành hàng ngang.

Hướng dẫn:

  • Nhập dữ liệu dưới dạng xâu.
  • Dùng split() để tách thành danh sách.
  • Chuyển danh sách thành số và in ra màn hình.

Nhiệm vụ 2: Viết chương trình nhập một xâu ký tự có thể có nhiều dấu cách giữa các từ. Sau đó chỉnh sửa xâu sao cho giữa các từ chỉ có một dấu cách.

Hướng dẫn:

  • Dùng split() để tách thành danh sách từ đơn.
  • Dùng join() để ghép lại với một dấu cách duy nhất giữa các từ.

Nhiệm vụ 3: Viết chương trình nhập số tự nhiên n, rồi nhập họ tên của n học sinh. Sau đó in danh sách tên học sinh theo hai cột: cột 1 là tên, cột 2 là họ đệm.

Hướng dẫn:

  • Dùng split() để tách họ tên thành hai phần: tên và họ đệm.
  • Lưu tên vào danh sách ten, họ đệm vào danh sách hodem, rồi in ra danh sách theo cột.

Câu hỏi: Cho xâu ký tự: "gà,vịt,chó,lợn,ngựa,cá". Hãy trình bày cách thay thế dấu , bằng dấu cách ( ).

Gợi ý:

Sử dụng lệnh replace() hoặc kết hợp split()join():

s = "gà,vịt,chó,lợn,ngựa,cá" print(s.replace(",", " "))

Hoặc:

s = "gà,vịt,chó,lợn,ngựa,cá" print(" ".join(s.split(",")))

Tóm tắt bài học:

  • Toán tử in và lệnh find() giúp kiểm tra xâu con trong xâu mẹ.
  • split() giúp tách xâu thành danh sách các từ.
  • join() giúp nối danh sách từ thành một xâu.
  • Biết cách vận dụng các lệnh này trong các bài toán xử lý xâu thực tế.


D. TRẮC NGHIỆM

Mới hơn Cũ hơn
Đọc tiếp:
Lên đầu trang