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

 


CHỦ ĐỀ 5 – BÀI 25 – TIN HỌC 10

Một Số Lệnh Làm Việc Với Xâu Kí Tự

Chủ đề 5: Giải quyết vấn đề với sự trợ giúp của máy tính

A. Yêu Cầu Cần Đạt

🔍

Hiểu cách tìm kiếm xâu con trong một xâu.

🔧

Biết sử dụng các lệnh find(), split(), join().

💡

Vận dụng các lệnh xử lý xâu để giải quyết các bài toán đơn giản.

🔍 1. Kiểm Tra Xâu Con

Dùng toán tử in để kiểm tra một xâu có nằm trong xâu khác hay không.

Cú pháp:

xau_con in xau_me
  • Kiểm tra xâu con có nằm trong xâu mẹ hay không.
  • Kết quả trả về True hoặc False.

Ví dụ:

s = "Học Python"
print("Python" in s)
print("Java" in s)

Kết quả: True / False

Black and white close-up of newspaper text magnified through a lens, emphasizing the word 'WAY'.

🔎 2. Tìm Vị Trí Xâu Con – find()

Lệnh find() trả về vị trí xuất hiện đầu tiên của xâu con trong xâu.

Cú pháp:

xau.find(xau_con)
  • Tìm vị trí xuất hiện đầu tiên của xau_con trong xau.
xau.find(xau_con, start)
  • Tìm xau_con trong xau bắt đầu từ vị trí start.

• Trả về vị trí đầu tiên nếu tìm thấy. • Trả về -1 nếu không tìm thấy.

Ví dụ:

s = "abc123456"
print(s.find("bc"))
print(s.find("123"))
print(s.find("xyz"))

Kết quả: 1 / 3 / -1

High-angle view of woman coding on a laptop, with a Python book nearby.

✂️ 3. Tách Xâu – split()

Lệnh split() tách một xâu thành danh sách các từ.

Cú pháp:

xau.split()
  • Tách chuỗi theo khoảng trắng.

Ví dụ:

"Python hay".split()

["Python", "hay"]

xau.split(ki_tu_tach)
  • Tách chuỗi theo ký tự được chỉ định.

Ví dụ:

"a-b-c".split("-")

["a", "b", "c"]

Ví dụ:

s = "Python lập trình rất hay"
A = s.split()
print(A)

Kết quả: ['Python', 'lập', 'trình', 'rất', 'hay']

🔗 4. Ghép Xâu – join()

Lệnh join() ghép các phần tử của danh sách thành một xâu.

Cú pháp:

A = ["Python", "rất", "hay"]
print(" ".join(A))

Ví dụ 1:

A = ["Python", "rất", "hay"]
print(" ".join(A))

Kết quả: Python rất hay

Ví dụ 2:

A = ["1", "2", "3", "4"]
print(",".join(A))

Kết quả: 1,2,3,4

📝 C. Thực Hành

🔸 Bài 1: Nhập nhiều số trên một dòng

s = input("Nhập các số: ")
A = s.split()
print("Có", len(A), "số")
for x in A:
print(int(x), end=" ")

🔸 Bài 2: Chuẩn hóa khoảng trắng

s = input("Nhập văn bản: ")
A = s.split()
kq = " ".join(A)
print(kq)

Ví dụ: Nhập "Hoc Python rat hay" → Kết quả: "Hoc Python rat hay"

🔸 Bài 3: Tách họ đệm và tên

n = int(input("Nhập số học sinh: "))
ten = []
hodem = []
for i in range(n):
s = input()
A = s.split()
ten.append(A[-1])
hodem.append(" ".join(A[:-1]))
print("Tên Họ đệm")
for i in range(n):
print(ten[i], hodem[i])

D. Ghi Nhớ

LệnhCông dụng
x in sKiểm tra xâu con
find()Tìm vị trí xâu con
split()Tách xâu thành danh sách
join()Ghép danh sách thành xâu

Luyện Tập – Vận Dụng

E. LUYỆN TẬP

Câu 1. Viết chương trình nhập nhiều số (số nguyên hoặc số thực) từ bàn phím, các số cách nhau bởi dấu cách. Sau đó in ra màn hình tổng các số đã nhập.
s = input()
A = s.split()
tong = 0
for x in A:
tong += float(x)
print("Tổng =", tong)
Câu 2. Viết chương trình nhập họ tên đầy đủ của người dùng, sau đó in thông báo tên và họ đệm của người đó.
hoten = input()
A = hoten.split()
print("Tên:", A[-1])
print("Họ đệm:", " ".join(A[:-1]))

F. VẬN DỤNG

Câu 1. Viết chương trình nhập hai số tự nhiên từ bàn phím, cách nhau bởi dầu cách và đưa ra kết quả là ƯCLN của hai số này.
import math
a, b = map(int, input().split())
print(math.gcd(a, b))

Giải thích:

  • input().split() → nhập hai số cách nhau bởi dấu cách.
  • map(int, ...) → chuyển hai số từ dạng chuỗi sang số nguyên.
  • math.gcd(a, b) → hàm có sẵn của Python để tìm ƯCLN của ab.
  • print() → in kết quả.
Câu 2. Viết chương trình nhập số tự nhiên n rồi nhập n họ tên học sinh. Sau đó yêu cầu nhập một tên và thông báo số bạn có cùng tên đó trong lớp
n = int(input())
ds = []
for i in range(n):
ds.append(input())
ten = input()
dem = 0
for ht in ds:
if ht.split()[-1] == ten:
dem += 1
print("Có", dem, "học sinh tên", ten)

Tóm Tắt Kiến Thức

Nội dungCú pháp
Kiểm tra xâu con"abc" in s
Tìm vị trís.find("abc")
Tách xâus.split()
Ghép xâu" ".join(A)

• in kiểm tra xâu con có tồn tại hay không. • find() trả về vị trí đầu tiên của xâu con, hoặc -1 nếu không tìm thấy. • split() tách một xâu thành danh sách các từ. • join() ghép các phần tử của danh sách thành một xâu. • split() và join() là hai lệnh thường dùng nhất khi xử lý văn bản trong Python.

Fascinating blue spiral design with intricate geometric patterns.

"split() và join() – cặp đôi không thể thiếu khi xử lý văn bản!"


D. TRẮC NGHIỆM

Bài cũ hơn Bài mới hơn
Đọc tiếp:
Lên đầu trang