Bài 24: Xâu Kí Tự | Tin Học 10 | Chủ đề 5: Giải quyết vấn đề với sự trợ giúp của máy tính - Lớp 10 - Kết Nối Tri Thức Với Cuộc Sống

Kết nối tri thức Tin học 10 Chủ đề 5: Giải quyết vấn đề với sự trợ giúp của máy tính Bài 24: Xâu Kí Tự


Trang 119

MỤC TIÊU

SAU BÀI NÀY EM SẼ:

• Hiểu được xâu kí tự là kiểu dữ liệu cơ bản của Python.

• Biết và thực hiện được lệnh for để xử lí xâu kí tự.

KHỞI ĐỘNG

Em đã biết dữ liệu xấu kĩ tự (gọi tắt là xấu) từ Bài 16 và chúng ta có thể tạo các biến kiều xâu ki tự theo nhiều cách như sau:

hinh-anh-bai-24-xau-ki-tu-12283-0

>>> s = "Thời khoá biểu"
> xau = "Hoa học trò"
>>> Cau_tho = """ Mình về mình có nhớ ta
Mười lăm năm ấy thiết tha mặn nồng"""


Liệu có lệnh nào trích ra từng kí tự của một xâu kí tự? Đếm số kí tự của một xâu?

NỘI DUNG BÀI HỌC

1. XÂU LÀ MỘT DÃY CÁC KÍ TỰ

Hoạt động 1: Tìm hiểu cấu trúc của xâu kí tự
Quan sát các ví dụ sau đề biết cấu trúc xâu kí tự, so sánh với danh sách để biết sự khác nhau giữa xâu (string) và danh sách (list).


Ví dụ 1. Xâu kí tự và cách truy cập đến từng ki tự của xâu.

hinh-anh-bai-24-xau-ki-tu-12283-1

>>> s = "Thời khoá biểu"
>>> len(s)
Lệnh len () sẽ tính độ dài của xâu hay số lượng các kí tự có trong xâu.
14
>>> s[0]
'T'
>>> s[10]
'b'
Có thể truy cập từng kí tự của xâu thông qua chỉ số. Chỉ số bắt đầu từ 0.


Một xâu kí tự được hiểu là một dãy các kí tự. Tương tự danh sách, ta có thể truy cập tùng kí tự của xâu thông qua chỉ số, chỉ số bắt đầu từ 0.

Ví dụ 2. Quan sát các lệnh sau đề thấy sự khác nhau giữa xấu và danh sách.

hinh-anh-bai-24-xau-ki-tu-12283-2

>>> d = ["a","b","c"]
>>> d[e] = "A"
>>> s = "abc"
>>> s[0] = "A"
Traceback (most recent call last):
File "<pyshell#15>", line 1, in <module>
s[0]= "A"
TypeError: 'str' object does not support item assignment

 

Trang 120

Python không cho phép thay đổi từng ki tự của một xâu. Điều này khác với danh sách.

Python không có kiểu dữ liệu kí tự. Kí tự chính là xấu có độ dài 1. Xâu rỗng được định nghĩa như sau:

hinh-anh-bai-24-xau-ki-tu-12283-3

empty = " "

 

Xâu kí tự trong Python là dãy các kí tự Unicode. Xấu có thể được coi là danh sách các kí tự nhưng không thay đổi từng kí tự của xâu. Truy cập từng kí tự của xâu qua chỉ số, chỉ số từ 0 đến độ dài len( ) – 1.


Câu hỏi

1. Các xâu kí tự sau có hợp lệ không?

a) "123&*()+-ABC"

b) "1010110&0101001"

c) "Tây Nguyên"

d) 11111111 = 256

2. Mỗi xâu hợp lệ ở Câu 1 có độ dài bằng bao nhiêu?

2. LỆNH DUYỆT KÍ TỰ CỦA XÂU

Hoạt động 2: Tìm hiểu lệnh duyệt từng kí tự của xâu
Quan sát các lệnh sau để biết cách duyệt từng kí tự của xâu kí tự bằng lệnh for.
Có hai cách duyệt, theo chỉ số và theo phần tử của xâu kí tự.
hinh-anh-bai-24-xau-ki-tu-12283-4

>>> s = "Thời khoá biểu"
>>> for i in range(len(s)):
Duyệt theo chỉ số với lệnh range().
print(s[1], end = " ")
T h ờ i k h o á b i ể u
>>>  for ch in s:
Duyệt theo kí tự của xâu kí tự.

print
(ch, end = " ")



– Cách thứ nhất, biến i lần lượt chạy theo chỉ số của xâu kí tự s, từ 0 đến len(s) – 1. Kí tự tại chỉ số i là s[i].

– Cách thứ hai duyệt theo từng kí tự của xấu s. Biến ch sẽ được gắn lần lượt các kí tự của xâu s từ đầu đến cuối.

Chú ý: Từ khoá in, tuỳ trường hợp cụ thể, hoặc là toán tử lôgic dùng đề kiểm tra một giá trị có mặt hay không trong một vùng giá trị/danh sách xấu, hoặc để chọn lẫn lượt từng phần tử trong một vùng giá trị/danh sách xâu.

hinh-anh-bai-24-xau-ki-tu-12283-5

>>> "a" in "abcd"
True
>>> "abc" in "abcd"
True

 

Trang 121

Có thể duyệt các kí tự của xâu bằng lệnh for tương tự như với danh sách.
s1 in s2, trả lại giá trị True nếu sự là xâu con của hinh-anh-bai-24-xau-ki-tu-12283-6


Câu hỏi

1. Sau khi thực hiện các lệnh sau, biễn skq sẽ có giá trị bao nhiêu?

>>> s = "81723"

>>> skq = " "

>>> for ch in s:

if int(ch) % 2 != 0:

skq = skq + ch

2. Cho s1 = "abc", s2 = "ababcabca". Các biểu thức lôgic sau cho kết quả là đúng hay sai?

a) s1 in s2

b) s1 + s1 in s2

c) "abcabca" in s2

d) "abc123" in s2

THỰC HÀNH

Các lệnh cơ bản làm việc với xâu kí tự

Nhiệm vụ 1. Viết chương trình nhập số tự nhiên n là số học sinh, sau đó nhập họ và tên học sinh. Lưu họ và tên học sinh vào một danh sách. In danh sách ra màn hình, mỗi họ tên trên một dòng.

Hướng dẫn. Chương trình có thể như sau:

hinh-anh-bai-24-xau-ki-tu-12283-7

n = int(input("Nhập số học sinh trong lớp: "))
ds_lop = [ ]
for i in range(n):
hoten = input("Nhập họ tên học sinh thứ " + str(i+1)+": ")
ds_lop.append(hoten)
print("Danh sách lớp học:")
for i in range(n):
print(ds_lop[i])



Nhiệm vụ 2. Nhập một xâu kí tự S từ bản phim rồi kiểm tra xem xâu S có chứa xâu con "10" không.

Hướng dẫn. Cách 1. Nếu xâu S chứa xấu con "10" thì sẽ có chỉ số k mà S[k] = "1" và S[k+1] = "0". Cách 2. Dùng toán tử in đề kiểm tra xâu "10" có là xâu con của S.

Cách 1: Duyệt kĩ tự của xấu theo chỉ số.

hinh-anh-bai-24-xau-ki-tu-12283-8

Trang 122

S = input("Nhập xâu kí tự bất kì: ")
kq = False
for
i in range(len(S)-1):
if S[i] == "1" and S[i+1] == "0":
kq = True
break
if kq:
print("Xâu gốc có chứa xâu '10")
else:
print("Xâu gốc không chứa xâu '10'")


Cách 2: Sử dụng toán tử in.

hinh-anh-bai-24-xau-ki-tu-12283-9

S = input("Nhập xâu kí tự bất kì: ")
s10 = "10"
if s10 in S:
print("Xâu gốc có chứa xâu '10'')
else:
print("Xâu gốc không chứa xâu '10'")


LUYỆN TẬP

1. Cho xâu S, viết đoạn lệnh trích ra xâu con của S bao gồm ba kí tự đầu tiên của S.

2. Viết chương trình kiểm tra xâu S có chứa chữ số không. Thông báo "S có chứa chữ số" hoặc "S không chứa chữ số nào".

VẬN DỤNG

1. Cho hai xâu S1, S2. Viết đoạn chương trình chèn xâu sị vào giữa s2, tại vị trí len(s2)//2. In kết quả ra màn hình.

2. Viết chương trình nhập số học sinh và họ tên học sinh. Sau đó đếm xem trong danh sách có bao nhiêu bạn tên là "Hương".

Gợi ý: Sử dụng toán tử in để kiểm tra một xâu có là xâu con của một xâu khác.

 

Tin tức mới


Đánh giá

Bài 24: Xâu Kí Tự | Tin Học 10 | Chủ đề 5: Giải quyết vấn đề với sự trợ giúp của máy tính - Lớp 10 - Kết Nối Tri Thức Với Cuộc Sống

Tổng số sao của bài viết là: 5 trong 1 đánh giá
Xếp hạng: 5 / 5 sao

Bình Luận

Để Lại Bình Luận Của Bạn

Tin Học 10

  1. Chủ đề 1: Máy tính và xã hội tri thức
  2. Chủ đề 2: Mạng máy tính và Internet
  3. Chủ đề 3: Đạo đức, pháp luật và văn hoá trong môi trường số
  4. Chủ đề 4: Ứng dụng tin học
  5. Chủ đề 5: Giải quyết vấn đề với sự trợ giúp của máy tính

Tin tức mới

Môn Học Lớp 10 - Kết Nối Tri Thức Với Cuộc Sống

Giáo dục thể chất cầu lông

Giáo dục thể chất bóng đá

Hoạt Động Trải Nghiệm, Hướng Nghiệp 10

Công Nghệ 10

Địa Lí 10

Toán 10 - Tập 1

Toán 10 - Tập 2

Lịch Sử 10

Mĩ thuật_Thiết kế mĩ thuật sân khấu, điện ảnh 10

Mĩ thuật_Thiết kế công nghiệp 10

Mĩ thuật_Thiết kế đồ hoạ 10

Mĩ thuật_Thiết kế mĩ thuật đa phương tiện 10

Mĩ thuật_Lí luận và lịch sử mĩ thuật 10

Mĩ thuật _Điêu khắc 10

Mĩ thuật_Đồ hoạ (tranh in) 10

Mĩ thuật_Hội hoạ 10

Mĩ thuật_Kiến trúc 10

Tin Học 10

Giải bài tập Sinh học 10

Giải bài tập Hóa học 10

Giải bài tập Vật lý 10

Bộ Sách Lớp 10

Giáo Dục Việt Nam

Bộ Sách Giáo Khoa của Nhà Xuất Bản Giáo Dục Việt Nam

Tài liệu học tập

Đây là tài liệu tham khảo hỗ trợ trong quá trình học tập

Global Success & Bộ Giáo Dục - Đào Tạo

Bộ sách Global Success & Bộ Giáo Dục - Đào Tạo là sự kết hợp giữa ngôn ngữ Tiếng Anh theo lối giảng dạy truyền thống và cập nhật những phương thức quốc tế

Cánh Diều

Bộ sách giáo khoa của Nhà xuất bản Cánh Diều

Kết Nối Tri Thức Với Cuộc Sống

Sách giáo khoa của nhà xuất bản Kết Nối Tri Thức Với Cuộc Sống

Sách Kết Nối Tri Thức Với Cuộc Sống

Lớp 1

Sách giáo khoa dành cho lớp 1

Lớp 6

Sách giáo khoa dành cho lớp 6

Lớp 5

Sách giáo khoa dành cho lớp 5

Lớp 4

Sách giáo khoa dành cho lớp 4

Lớp 2

Sách giáo khoa dành cho lớp 2

Lớp 3

Sách giáo khoa dành cho lớp 3

Lớp 7

Sách giáo khoa dành cho lớp 7

Lớp 8

Sách giáo khoa dành cho lớp 8

Lớp 9

Sách giáo khoa dành cho lớp 9

Lớp 10

Sách giáo khoa dành cho lớp 10

Lớp 11

Sách giáo khoa dành cho lớp 11

Lớp 12

Sách giáo khoa dành cho lớp 12

Liên Kết Chia Sẻ

** Đây là liên kết chia sẻ bới cộng đồng người dùng, chúng tôi không chịu trách nhiệm gì về nội dung của các thông tin này. Nếu có liên kết nào không phù hợp xin hãy báo cho admin.