Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 21 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
21
Dung lượng
43,72 KB
Nội dung
Thực hiện: Nguyễn Thị Hồng_Hà Nam Bài KIỂU CHUỔI I Khái niệm Trong Python, chuỗi tập hợp kí tự bảng mã Unicode Mỗi kí tự phần tử chuỗi Số kí tự chuỗi gọi chiều dài chuỗi, chuỗi có độ dài gọi chuỗi rỗng Trong Python khơng có kiểu kí tự (character) giống ngơn ngữ lập trình pascal, thay vào bạn hiểu ký tự chuỗi có độ dài Ví dụ chuỗi: ‘python’ ‘tinhoc’ II Khai báo chuỗi Để khai báo chuỗi Python bạn sử dụng cặp dấu nháy đơn nháy đơi Biến chuỗi=”chuỗi” Ví dụ 1: s= "tin" hay s= 'tin' chuỗi Ngoài bạn sử dụng cặp nháy đơn, nháy đơi để tạo chuỗi nhiều dịng Ví dụ 2: Khai báo chuỗi s sau: s = “”” Lan hong hue “”” Print(s) Kết chạy chương trình: Lan Thực hiện: Nguyễn Thị Hồng_Hà Nam hong hue Lưu ý: Trong Python, chuỗi viết dấu nháy thường sử dụng comments khơng gán cho biến cụ thể III Cách truy cập đến phần tử chuỗi Truy cập phần tử chuỗi Ta lấy ký tự chuỗi thông qua số giống lấy phần tử list Biến chuỗi[chỉ số phần tử cần tham chiếu] Ví dụ: A = "Codelearn" A[0]=”C” Ngồi ra, ngơn ngữ lập trình Python bạn cịn truy xuất tới số âm chuỗi: Tên chuổi[-n] truy cập đến vị trí thứ n tính từ phải sang trái Ví dụ: s = 'Python String' s[0]=’P’; s[-1] =’g’ s[-2]=’n’ Truy cập đến đoạn phần tử chuỗi Để lấy dãy kí tự liên tiếp chuỗi, ta sử dụng cách sau: Biến chuỗi[n:m]: Truy cập đến đoạn phần tử liên tiếp chuỗi, phần tử có số n đến phần tử có số m-1 Ví dụ: s = 'Python String' print(s[0:2]) print(s[3:5]) Thực hiện: Nguyễn Thị Hồng_Hà Nam print(s[7:]) print(s[:6]) print(s[7:-7]) print(s[7:-4]) print(s[-4:-3] Kết chạy chương trình: Py ho String Python St r IV Các thao tác xử lý chuỗi Python Ghép chuỗi (cộng chuỗi) Ghép chuỗi hay cộng chuỗi kí hiệu dấu +, sử dụng để ghép nhiều chuỗi thành chuỗi ví dụ: ‘Ha’+’Noi’=’HaNoi’ Lặp lại chuỗi Cho chuỗi s, ta viết s*n có nghĩa tạo chuỗi cách ghép n lần chuỗi s Ví dụ S=’ab’ 3*S thu chuỗi ‘ababab’ Thực hiện: Nguyễn Thị Hồng_Hà Nam So sánh chuỗi Các phép so sánh chuỗi:== (bằng); = (lớn bằng); > (lớn hơn); < (nhỏ hơn); != (khác) Thực so sánh chuỗi theo quy tắc sau: • Chuỗi A lớn chuỗi B kí tự khác chúng kể từ trái sang phải có mã ASCII lớn (tương tự so sánh xâu pascal) Ví dụ: ‘anh em’ > ‘Anh em’ ‘a’ mã ASCII lớn ‘A’ • Nếu chuỗi A B chuỗi có độ dài khác A đoạn đầu B A nhỏ B Ví dụ: ‘Tin’ < ‘Tin hoc’ • Hai chuỗi gọi chúng giống hoàn toàn Ví dụ: ‘python’==’python’ Các hàm xử lí chuỗi 4.1 Hàm len() len(s)=Độ dài chuỗi s Ví dụ: len(‘abcd’)=4 len(‘’)=0 S=’hoa lan’ => len(S)=7 4.2 Hàm isalnum() S.isalnum()= True chuỗi có ký tự tất ký tự chữ- số Nếu không hàm trả false Ví dụ: Đoạn chương trình sau if s.isalnum()==True: Thực hiện: Nguyễn Thị Hồng_Hà Nam print(' chi chua chu va so') else: print(' co chua ki tu khac ngoai chu so') Khi chạy chương trình Nếu s=’abc123’ s=’123’ s=’abc’ thu thơng báo: Chi chua chu va so Nếu s=’12.abc’ s=’’ nhận thông báo: co chua ki tu khac ngoai chu va so 4.3 Hàm isalpha() S.isalpha()= True chuỗi S chứa chữ, ngược lại hàm nhận False Ví dụ: Ta có chương trình sau: s='cbd' if s.isalpha()==True: print(' chi chua chu') else: print(' co chua ki tu khac ngoai chu ') chạy chương trình thu kết quả: chi chua chu 4.4 Hàm isnumeric() S.isnumeric()= True chuỗi S chứa số, ngược lại hàm nhận False Ví dụ: Ta có chương trình sau: s='cbd123' if s.isnumeric()==True: Thực hiện: Nguyễn Thị Hồng_Hà Nam print(' chi chua so') else: print(' co chua ki tu khac ngoai so ') chạy chương trình thu kết quả: co chua ki tu khac ngoai so 4.5 Hàm upper() : S.upper()= chuỗi sau chuyển chữ thường S thành chữ hoa Ví dụ: s='vvbb' s1=s.upper() print(s1) Cho kết là: VVBB 4.6 Hàm min()/max() - min(x,y,x…) với x,y,z biểu thức số, kí tự, chuỗi Hàm trả số, kí tự, chuỗi nhỏ tham số truyền - max(x,y,x…) với x,y,z biểu thức số, kí tự, chuỗi Hàm trả số, kí tự, chuỗi lớn tham số truyền Ví dụ: s = "ABC123" print(min(s)) print(max(s)) Trả về: Thực hiện: Nguyễn Thị Hồng_Hà Nam C 4.7 Hàm isspace() s.isspace(): trả True chuỗi chứa ký tự khoảng trắng whitespace, khơng false Ví dụ: s = input() print(s.isspace()) Nếu nhập s=’ab c’ ta nhận False, nhập s=’ ‘ ta nhận True 4.8 Hàm capitalize() S capitalize(): Trả chuỗi S sau viết hoa chữ Ví dụ, ta có đoạn code sau: str1 = "hello world!" str2 = "Hello Python!" str3 = "1hello Python!" print (str1.capitalize()) print (str2.capitalize()) print (str3.capitalize()) Cho kết quả: Hello world! Hello python! 1hello python! 4.9 Hàm count() Thực hiện: Nguyễn Thị Hồng_Hà Nam s.count((sub, start= 0, end=len(string)) : Trả số lần xuất chuỗi sub khoảng [start, end] chuỗi s Đếm xem chuỗi sub xuất lần chuỗi s chuỗi s (bắt đầu từ số start đến số end) Nếu không start end mạc định start=0 end = chiều dài chuỗi s Ví dụ ta có đoạn code sau: str1 = "trong hoa lan hoa hue hoa hong thi hoa lan dep nhat" sub = "hoa" print ("hoa xuat hien tu vi tri thu 10 den 51 la: ", str1.count(sub, 10, 60)) sub = "hoa"; print ("hoa xuat hien xau tren la ", str1.count(sub)) Cho kết là: hoa xuat hien tu vi tri thu 10 den 51 la: hoa xuat hien xau tren la 4.10 Hàm split() S.split(ch): Thực tách chuỗi S thành danh sách chuỗi từ S vị trí cắt ch Nếu ch khơng có mặt thực tách S thành danh sách chuỗi khác trống Ví dụ 1: s = "Xin chao ban!" s1= s.split(" ") print(s1) Kết chạy chương trình: ['Xin', 'chao', 'ban!'] Ví dụ 2: A=" xin chao cac ban ” Thực hiện: Nguyễn Thị Hồng_Hà Nam print(A.split()) Kết chạy chương trình là: ['xin', 'chao', 'cac', 'ban'] 4.11 Hàm join() ch.join(list): Thực nối chuỗi thành phần list thành chuỗi sử dụng kí tự ch để làm điểm nối Ví dụ: list = ["Xin", "chao", "cac ban!"] print(" ".join(lst)) lst = ["A", "B", "C"] print("-".join(lst)) Kết chạy chương trình: Xin chao cac ban! A-B-C Vận dụng split join để xóa dấu cách thừa chuỗi: A=" xin chao cac ban < 12 tuoi " print(A.split()) print(' '.join(A.split())) Kết chạy chương trình là: ['xin', 'chao', 'cac', 'ban', '