Bài 10 DỮ LIỆU KIỂU XÂU (2 tiết) I Dữ liệu kiểu xâu Xét bài toán dịch từ ngôn ngữ tiếng Anh sang ngôn ngữ tiếng Việt Input ? Output ? Input 1 xâu Output 1 xâu. Xâu là dãy các kí tự trong bảng mã Unicode và được đặt trong cặp dấu nháy đơn hoặc dấu nháy kép Mỗi kí tự được gọi là một phần tử của xâu. Số lượng kí tự trong xâu được gọi là độ dài của xâu Xâu có độ dài bằng 0 là xâu rỗng b) Ví dụ: Xâu “I am a robot” có độ dài 12 Xâu “Tôi là người máy” có độ dài 16
Bài 10: DỮ LIỆU KIỂU XÂU (2 tiết) I Dữ liệu kiểu xâu Xét tốn dịch từ ngơn ngữ tiếng Anh sang ngôn ngữ tiếng Việt Input: ? Output: ? Input: xâu Output: xâu 1) Khái niệm - Xâu dãy kí tự bảng mã Unicode đặt cặp dấu nháy đơn dấu nháy kép - Mỗi kí tự gọi phần tử xâu - Số lượng kí tự xâu gọi độ dài xâu - Xâu có độ dài xâu rỗng b) Ví dụ: - Xâu “I am a robot” có độ dài 12 - Xâu “Tơi người máy” có độ dài 16 2) Cách tạo biến kiểu xâu Cách 1: Dùng lệnh gán: Ví dụ: E = “I am a robot” Cách 2: = input() Ví dụ: s = input(“Nhập vào xâu từ bàn phím) II Các thao tác xử lý xâu 1) Các phép toán a) Phép ghép xâu: kí hiệu dấu (+) dùng để ghép nhiều xâu thành xâu b) Phép nhân xâu (*) tạo xâu lặp lặp lại xâu gốc với số lần nhân Ví dụ: “Tin học” * => “Tin họcTin họcTin học” c) Phép so sánh: ==, != (khác), , >=, xâu B kí tự khác chúng kể từ trái sang phải xâu A có mã lớn (trong bảng mã Unicode 16 bit) • Ví dụ: “Tin học” < “Tốn học” • Xâu A B có độ dài khác B phần đầu A A lớn B • Ví dụ “Tin học” > “Tin” • Hai xâu chúng giống hồn tồn d) Phép tốn in: cho biết xâu thứ có xuất xâu thứ hay khơng? Có True, ngược lại False Ví dụ: “học” in “Tin học” =>True “họcTin” in “Tin học” * =>True “TIN” in “Tin học” =>False Đánh số thao tác với số xâu a) Đánh số kí tự xâu: đến độ dài xâu - b) Tham chiếu tới phần tử xâu: tên_xâu[chỉ số] c) Sao chép xâu: tên_xâu[vị trí bắt đầu:vị trí dừng] Tạo xâu đoạn xâu gốc từ vị trí bắt đầu đến vị trí dừng - Ví dụ T r n g S = “Trương Định” S[1] = “r” S[7:11] = “Định” Đ ị n h 10 Một số hàm, thủ tục xâu a) Hàm len(): trả độ dài xâu b) Hàm str(): chuyển đổi liệu dạng số sang dạng xâu Ví dụ: str(21) => “21”; str(34.21) => “34.21” c) Hàm int(), float(): tương ứng chuyển đổi liệu dạng xâu sang dạng số nguyên hay số thực Ví dụ: int(12) =>12; int(12.56) => 12 float(12.56) => 12.56; float(12) => 12.0 d) Hàm lower(): chuyển xâu thành in thường Ví dụ: S=“ABC” print(S.lower()) # “abc” e) Hàm upper(): chuyển xâu thành in hoa S=“abc” print(S.upper()) # “ABC” f) Hàm split(): tách xâu thành xâu cách dấu cách S=“lop6a lop6b” print(S.split()) # hai xâu nhận “lop6a” “lop6b”