TRƢỜNG ĐẠI HỌC VINH VIỆN KỸ THUẬT VÀ CÔNG NGHỆ CHƢƠNG 4 CÁC KIỂU DỮ LIỆU CÓ CẤU TRÚC Nghệ An, 2022 Chƣơng 4: KIẾN THỨC CHƢƠNG 3 (LẬP TRÌNH HÀM TRONG PYTHON) NỘI DUNG: 3. Định nghĩa hàm trong Python 3. Các loại hàm trong Python 3. Tham số của hàm 3.
Hàm vô danh 3. Các loại biến trong Python Chƣơng 4: CÁC KIỂU DỮ LIỆU CÓ CẤU TRÚC NỘI DUNG GIẢNG DẠY: 4. Kiểu Dictionary Chƣơng 4: CÁC KIỂU DỮ LIỆU CÓ CẤU TRÚC NỘI DUNG GIẢNG DẠY: 4. Kiểu Dictionary KIỂU STRINGS - String là một trong các kiểu phổ biến nhất trong Python.
String trong Python là immutable. - Chúng ta có thể tạo các chuỗi bằng cách bao một text trong một trích dẫn đơn hoặc trích dẫn kép. - Python coi các lệnh trích dẫn đơn và kép là như nhau. Ví dụ: var1 = 'Hello World!' var2 = "Python Programming" KIỂU STRINGS Truy cập các giá trị trong String Python không hỗ trợ một kiểu chữ cái; chúng được coi như các chuỗi có độ dài là 1.
Trong Python, String được lưu giữ dưới dạng các ký tự đơn trong vị trí ô nhớ liên tiếp nhau. Lợi thế của sử dụng String là nó có thể được truy cập từ cả hai hướng (tiến về trước forward hoặc ngược về sau backward). Việc lập chỉ mục của cả hai hướng đều được cung cấp bởi sử dụng String trong Python: - Chỉ mục với hướng forward bắt đầu với 0,1,2,3,… - Chỉ mục với hướng backward bắt đầu với -1,-2,-3,… KIỂU STRINGS Truy cập các giá trị trong String Để truy cập các giá trị trong String, bạn sử dụng các dấu ngoặc vuông có chỉ mục ở bên trong. var1 = 'Hello World!' var2 = "Python Programming" print "var1[0]: ", var1[0] print "var2[1:5]: ", var2[1:5] KIỂU STRINGS Cập nhật String trong Python Có thể cập nhật một chuỗi đang tồn tại bằng cách gán (hoặc tái gán) một biến cho string khác.
Giá trị mới có thể liên quan hoặc khác hoàn toàn giá trị trước đó. Ví dụ: var1 = 'Hello World!' print "Chuoi hien tai la :- ", var1[:6] + 'Python' Khi code trên được thực thi sẽ cho kết quả: Chuoi hien tai la :- Hello Python KIỂU STRINGS Các toán tử để thao tác với String trong Python Có ba kiểu toán tử được hỗ trợ bởi String, đó là: - Toán tử cơ bản; - Toán tử membership; - Toán tử quan hệ. KIỂU STRINGS Các toán tử cơ bản để thao tác với String - Có hai loại toán tử cơ bản có thể được sử dụng với String, đó là toán tử nối chuỗi + và toán tử lặp chuỗi *. - Cả hai toán hạng được truyền cho phép nối chuỗi này phải cùng kiểu, nếu không sẽ tạo một lỗi.
Ví dụ: >>> "hoang" + "nam" Khi code trên được thực thi sẽ cho kết quả: 'hoangnam' KIỂU STRINGS Các toán tử membership để thao tác với String - Toán tử in: trả về true nếu một ký tự là có mặt trong chuỗi đã cho, nếu không nó trả về false. - Toán tử not in: trả về true nếu một ký tự là không tồn tại trong chuỗi đã cho, nếu không nó trả về false. Các toán tử quan hệ để thao tác với String - Tất cả các toán tử quan hệ (như <,>, <=, >=, ==, !=, <>) cũng có thể áp dụng cho các String. - Các chuỗi được so sánh dựa trên giá trị ASCII hoặc Unicode.
THẢO LUẬN NHÓM NỘI DUNG: 1. Các toán tử định dạng chuỗi trong Python. Các phương thức và hàm đã xây dựng sẵn để xử lý chuỗi trong Python. THẢO LUẬN NHÓM (Hàm và các toán tử cơ bản) THẢO LUẬN NHÓM (Phép cắt chuỗi) THẢO LUẬN NHÓM (Định dạng chuỗi) THẢO LUẬN NHÓM (Định dạng chuỗi) THẢO LUẬN NHÓM (Định dạng chuỗi) THẢO LUẬN NHÓM (Phƣơng thức và hàm có sẵn) THẢO LUẬN NHÓM (Phƣơng thức và hàm có sẵn) THẢO LUẬN NHÓM (Phƣơng thức và hàm có sẵn) Chƣơng 4: CÁC KIỂU DỮ LIỆU CÓ CẤU TRÚC NỘI DUNG GIẢNG DẠY: 4.
Kiểu Dictionary LIST TRONG PYTHON - List trong Python là cấu trúc dữ liệu mà có khả năng lưu giữ các kiểu dữ liệu khác nhau. - List trong Python là thay đổi (mutable), nghĩa là Python sẽ không tạo một List mới nếu bạn sửa đổi một phần tử trong List. - List là một container mà giữ các đối tượng khác nhau trong một thứ tự đã cho. Các hoạt động khác nhau như chèn hoặc xóa có thể được thực hiện trên List.
- Một List có thể được tạo ra bởi lưu trữ một dãy các kiểu giá trị khác nhau được phân biệt bởi các dấu phảy. LIST TRONG PYTHON Cú pháp để tạo List: <ten_list>=[giatri1, giatri2, ., giatriN]; Một List trong Python được bao xung quanh bởi các dấu ngoặc vuông []. Ví dụ: list1 = ['vatly', 'hoahoc', 1997, 2000]; list2 = [1, 2, 3, 4, 5 ]; list3 = ["a", "b", "c", "d"]; LIST TRONG PYTHON Truy cập các giá trị trong List trong Python: Tương tự như chỉ mục của chuỗi, chỉ mục của List bắt đầu từ 0. Để truy cập các giá trị trong List, sử dụng cú pháp sau: <ten_list>[index] để lấy giá trị có sẵn tại chỉ mục đó.
Ví dụ: list1 = ['vatly', 'hoahoc', 1997, 2000]; Kết quả: print "list1[0]: ", list1[0] list1[0]: vatly LIST TRONG PYTHON Các hoạt động cơ bản trên List trong Python: - Có thể thực hiện các hoạt động nối với toán tử + hoặc hoạt động lặp với * như trong các chuỗi. Điểm khác biệt là ở đây nó tạo một List mới, không phải là một chuỗi. Ví dụ: list1=[10,20] Kết quả: list2=[30,40] >>> list3=list1+list2 [10, 20, 30, 40] print list3 >>> LIST TRONG PYTHON Cập nhật List trong Python: - Có thể cập nhật một hoặc nhiều phần tử của List bởi gán giá trị cho chỉ mục cụ thể đó. Cú pháp: <ten_list>[index]=<giatri> list = ['vatly', 'hoahoc', 1997, 2000]; Kết quả: list[2] = 2001; Gia tri moi tai chi muc thu 2 : print "Gia tri moi tai chi muc thu 2: " 2001 print list[2] LIST TRONG PYTHON Xóa phần tử trong List: - Để xóa một phần tử trong List, bạn có thể sử dụng lệnh del nếu bạn biết chính xác phần tử nào bạn muốn xóa hoặc sử dụng phương thức remove() nếu bạn không biết.
Ví dụ: list1 = ['vatly', 'hoahoc', 1997, 2000]; Kết quả: del list1[2]; Cac phan tu cua List sau khi print "Cac phan tu cua List sau khi xoa: " xoa: print list1 ['vatly', 'hoahoc', 2000] THẢO LUẬN NHÓM NỘI DUNG: 1. Khởi tạo list, các toán tử thực hiện trên list 2. Các hàm và phương thức đã xây dựng sẵn để xử lý List trong Python. THẢO LUẬN NHÓM (Khởi tạo list) THẢO LUẬN NHÓM (Khởi tạo list) THẢO LUẬN NHÓM (Toán tử, chỉ mục và cắt) THẢO LUẬN NHÓM (Phƣơng thức, hàm có sẵn) THẢO LUẬN NHÓM (Phƣơng thức, hàm có sẵn) “Nguyen Xuan Hoang” THẢO LUẬN NHÓM (Examples) THẢO LUẬN NHÓM (Some Operations on list) BÀI TẬP NỘI DUNG: 1.
Tạo một biến my_string và gán cho nó một chuỗi nội dung bất kỳ, sau đó print ra chiều dài chuỗi đó, cuối cùng là print ra chuỗi đó đã được chuyển thành viết hoa hoàn toàn. Nhập m, n để tạo 2 List số nguyên ngẫu nhiên A[n] và B[m] có giá trị khoảng {-100,+100}. Ghép A và B thành List C[p=m+n]. In ra List A, B và C.
- Sắp xếp List C tăng dần. - Nhập số nguyên x, kiểm tra x có xuất hiện trong ListC hay không, nếu có thì xuất hiện mấy lần, ở vị trí đầu tiên nào. - Xóa các phần tử trùng nhau của List C, in ra List C mới. BÀI TẬP CHUẨN BỊ CHO BUỔI HỌC TIẾP THEO: 1.
Đọc các tài liệu về nội dung mục 4. Các hàm được xây dựng sẵn cho Tuple, Dictionary trong Python. Chƣơng 4: CÁC KIỂU DỮ LIỆU CÓ CẤU TRÚC NỘI DUNG GIẢNG DẠY: 4. Kiểu Dictionary KIỂU TUPLES - Một tuple là một dãy các đối tượng không thay đổi (immutable) trong Python, vì thế tuple không thể bị thay đổi.
- Các tuple cũng là các dãy giống như List. - Không giống List sử dụng các dấu ngoặc vuông, thì tuple sử dụng các dấu ngoặc đơn. - Các đối tượng trong tuple được phân biệt bởi dấu phẩy và được bao quanh bởi dấu ngoặc đơn (). - Giống như chỉ mục của chuỗi, chỉ mục của tuple bắt đầu từ 0.
KIỂU TUPLES Ví dụ: fruitTuple = ("apple", "apricot", "banana","coconut", "lemen") otherTuple = (100, "one", "two", 3) print ("Fruit Tuple:") print (fruitTuple) print (" ----------------------- ") print ("Other Tuple:") print (otherTuple) KIỂU TUPLES So sánh List và Tuple List và Tuple đều là một dãy (sequence) các phần tử. Chúng có các khác biệt sau: - Khi viết một List bạn sử dụng cặp dấu ngặc vuông [ ], trong khi viết một Tuple bạn sử dụng dấu ngặc tròn ( ). - List là kiểu dữ liệu có thể biến đổi (mutable), bạn có thể sử dụng phương thức như append() để thêm phần tử vào List, hoặc sử dụng phương thức remove() để xóa các phần tử ra khỏi List mà không làm tạo ra thêm một thực thể 'List' khác trên bộ nhớ. KIỂU TUPLES Truy cập các phần tử của Tuples - Có thể truy cập vào các phần tử của Tuple thông qua chỉ số.
- Các phần tử của Tuple được đánh chỉ chỉ từ trái sang phải, bắt đầu từ 0. - Có thể truy cập vào các phần tử của Tuple theo chỉ số âm (Negative index), các phần tử được đánh chỉ số từ phải sang trái với các giá trị -1, -2,. KIỂU TUPLES Truy cập các phần tử của Tuples Truy cập các giá trị trong tuple tương tự như khi truy cập các phần tử trong List. Ví dụ: tup1 = ('vatly', 'hoahoc', 1997, 2000); Kết quả: tup2 = (1, 2, 3, 4, 5, 6, 7 ); tup1[0]: vatly tup2[1:5]: [2, 3, 4, 5] print "tup1[0]: ", tup1[0] print "tup2[1:5]: ", tup2[1:5] KIỂU TUPLES Các hoạt động cơ bản trên tuple trong Python Giống như String và List, chúng ta cũng có thể sử dụng toán tử nối + và toán tử lặp * với tuple.
Điểm khác biệt là nó tạo ra một tuple mới, không tạo ra một chuỗi hay list. Ví dụ: data1=(1,2,3,4) Kết quả: data2=('x','y','z') >>> data3=data1+data2 (1, 2, 3, 4, 'x', 'y', 'z') print data3 >>> KIỂU TUPLES Xóa các phần tử của tuple trong Python Xóa các phần tử đơn của tuple là điều không thể. Chúng ta chỉ có thể xóa toàn bộ tuple với lệnh del. Ví dụ: Chú ý rằng sẽ có một exception được tạo ra, đó là bởi vì sau khi xóa thì tuple này không tồn tại nữa.6,'z') print data del data # Se xoa du lieu cua tuple print data # Se hien thi mot error boi vi tuple da bi xoa THẢO LUẬN NHÓM NỘI DUNG: Các hàm và phương thức đã xây dựng sẵn để xử lý Tuple trong Python.
THẢO LUẬN NHÓM THẢO LUẬN NHÓM THẢO LUẬN NHÓM Chƣơng 4: CÁC KIỂU DỮ LIỆU CÓ CẤU TRÚC NỘI DUNG GIẢNG DẠY: 4.