Bài giảng Lập trình Python: Bài 5 - Trương Xuân Nam

28 30 0
Bài giảng Lập trình Python: Bài 5 - Trương Xuân Nam

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

Bài giảng Lập trình Python: Bài 5 Kiểu tuần tự trong python, phần 2 cung cấp cho người học những kiến thức như: List (danh sách); Tuple (hàng); Range (miền); Bài tập về dữ liệu tuần tự. Mời các bạn cùng tham khảo!

LẬP TRÌNH PYTHON Bài 5: Kiểu python, phần Tóm tắt nội dung trước ▪ Vật chứa loại liệu đặc biệt, chứa bên loại liệu ▪ Kiểu loại vật chứa mà ta duyệt phần tử bên theo thứ tự ▪ Chuỗi (str) dãy str độ dài kí tự ▪ ▪ ▪ ▪ ▪ ▪ Nhiều phép toán: nối chuỗi (+), nhân (*), kiểm tra (in) So sánh hai chuỗi theo thứ tự từ điển Hệ thống mục theo chiều, trái sang phải phải sang trái Phép cắt chuỗi: tạo chuỗi theo vị trí đầu cuối Ba kiểu định dạng chuỗi: định dạng (%), f-string hàm format Nhiều phương thức hỗ trợ thao tác nội dung chuỗi ▪ Python có hàm chuyển đổi số kí tự unicode TRƯƠNG XUÂN NAM Nội dung Kiểu liệu (sequential data type) String (chuỗi) Bài tập xử lý chuỗi List (danh sách) Tuple (hàng) Range (miền) Bài tập liệu TRƯƠNG XUÂN NAM Phần List (danh sách) TRƯƠNG XUÂN NAM Bất biến (immutable) Khả biến (mutable) ▪ Bất biến = không thay đổi, loại liệu bất biến thông dụng Python: bool, int, float, str, tuple frozenset ▪ Khả biến = thay đổi, loại liệu khả biến thông dụng Python gồm: list, set, dict ▪ Chúng ta thay đổi giá trị int, nói “bất biến” ▪ Python không thực thay đổi giá trị int, phần mềm tạo vùng nhớ chứa giá trị cho biến “trỏ” tới vùng ▪ Ví dụ để hiểu rõ chế này: n = 100 print(n, id(n)) n = n + print(n, id(n)) # 100 id biến n # 101 id n thay đổi so với TRƯƠNG XUÂN NAM Giới thiệu khai báo ▪ List = dãy đối tượng (một loại array đa năng) ▪ Các phần tử list không thiết phải kiểu liệu ▪ Khai báo trực tiếp: liệt kê phần tử đặt cặp ngoặc vuông ([]), ngăn cách dấu phẩy (,) [1, 2, 3, 4, 5] ['a', 'b', 'c', 'd'] [[1, 2], [3, 4]] [1, 'one', [2, 'two']] [] # # # # # list list list list list số nguyên chuỗi list hỗ hợp rỗng ▪ Kiểu chuỗi (str) python xem list đặc biệt, bên gồm toàn str độ dài TRƯƠNG XUÂN NAM Khởi tạo list ▪ Tạo list constructor (hàm tạo) l1 = list([1, 2, 3, 4]) l2 = list('abc') l3 = list() # list số nguyên # list chuỗi # list rỗng ▪ Tạo list list comprehension (bộ suy diễn danh sách) đoạn mã ngắn trả phần tử thuộc list # X # # Y list 1000 số nguyên từ đến 999 = [n for n in range(1000)] list gồm 10 list cặp [x, x2] với x chạy từ đến = [[x, x*x] for x in range(10)] TRƯƠNG XUÂN NAM So sánh list: theo thứ tự từ điển (như str) a = [1, 2, 3] b = [1, 2, 3, 4] c = [1.5] d = ['a', 'b', 'c'] print(a > b) # False print(a == b) # False print(a < b) # True print(a + [4] == b) # True print(c = c) # Lỗi TRƯƠNG XUÂN NAM Phép toán, mục cắt ▪ Giữa list str có tương đồng định ▪ List hỗ trợ phép toán: ghép nối (+), nhân (*) kiểm tra nội dung (in) ▪ List sử dụng hệ thống mục phép cắt phần tương tự str ▪ Điểm khác biệt: nội dung list thay đổi # khởi tạo list ban đầu l1 = list([1, 2, 3, 4]) # thay đổi giá trị phần tử cuối l1[-1] = list('abc') # in nội dung list: [1, 2, 3, ['a', 'b', 'c']] print(l1) TRƯƠNG XUÂN NAM Chỉ mục, lát cắt, xóa liệu với list a = list('abcde') print(a) # ['a', 'b', 'c', 'd', 'e'] a[-1] = [0, 5, 9] # thay đổi phần tử cuối print(a) # ['a', 'b', 'c', 'd', [0, 5, 9]] a[1:3] = [1, 2, 3] # thay đổi đoạn print(a) # ['a', 1, 2, 3, 'd', [0, 5, 9]] print(a[2::-1]) # [2, 1, 'a'] a[2::-1] = [0] # lỗi, đoạn ngược khơng thể thay đổi del a[2::-1] # xóa đoạn từ trở đầu print(a) # [3, 'd', [0, 5, 9]] del a # xóa biến a print(a) # lỗi, a không tồn TRƯƠNG XUÂN NAM 10 Duyệt list với vòng lặp for my_list = ['foo', 'bar', 'baz', 'noo’] # duyệt phần tử, cách làm đơn giản for item in my_list: print(item) # duyệt phần tử theo giá trị mục for i in range(len(my_list)): print(i, my_list[i]) # duyệt theo giá trị mục nhanh # với cách sử dụng hàm enumerate for i, item in enumerate(my_list): print(i, my_list[i]) TRƯƠNG XUÂN NAM 14 Ví dụ làm việc với list # tạo in nội dung list danhsach = ["apple", "banana", "cherry"] for x in danhsach: print(x) # thêm phần tử vào cuối list lại in danhsach.append("orange") print(danhsach) # thêm phần tử vào list in danhsach.insert(1, "orange") print(danhsach) # xếp lại danh sách in danhsach.sort() print(danhsach) TRƯƠNG XUÂN NAM 15 Một số thao tác thông dụng với list TRƯƠNG XUÂN NAM 16 Phần Tuple (hàng) TRƯƠNG XUÂN NAM 17 Tuple dạng readonly list ▪ Tuple = dãy đối tượng (list), bị thay đổi giá trị q trình tính tốn ▪ Như str giống tuple nhiều list ▪ Khai báo trực tiếp cách liệt kê phần tử đặt cặp ngoặc tròn (), ngăn cách phẩy (1, 2, 3, 4, 5) ('a', 'b', 'c', 'd') (1, 'one', [2, 'two']) (1,) () # # # # # TRƯƠNG XUÂN NAM tuple tuple tuple tuple tuple số nguyên chuỗi hỗ hợp phần tử rỗng 18 Khai báo tuple không thiết phải dùng () t0 = 'a', 'b', 'c' # tuple chuỗi t1 = 1, 2, 3, 4, # tuple số nguyên t2 = ('a', 'b', 'c') # tuple chuỗi t3 = (1, 'one', [2, 'two']) # tuple hỗn hợp t4 = 1, 'one', [2, 'two'] # tuple hỗn hợp t5 = () # tuple rỗng t6 = 'a', # tuple phần tử t7 = ('a') # KHÔNG phải tuple (là chuỗi) t8 = ('a',) # tuple phần tử t9 = ('a', ) # tuple, không chuẩn python TRƯƠNG XUÂN NAM 19 Tuple list nhiều điểm giống ▪ Tuple tạo constructor generator (bộ sinh) – cách viết tương tự list comprehension ▪ Tuple hỗ trợ phép toán: +, *, in ▪ Tuple cho phép sử dụng mục cắt ▪ Các phương thức thường dùng tuple ▪ count(v): đếm số lần xuất v tuple ▪ index(sub[, start[, end]]): tương tự str list ▪ Tuple khác list điểm nào? ▪ Chiếm nhớ ▪ Nhanh TRƯƠNG XUÂN NAM 20 Bô sinh tuple dùng lần # t0 viết giống suy diễn danh sách t0 = (c for c in 'Hello!’) # tạo t1 từ t0 t1 = tuple(t0) # tạo t2 từ t0 t2 = tuple(t0) print(t0) # print(t1) # ('H', 'e', 'l', 'l', 'o', '!') print(t2) # () stop) ▪ Vậy range khác tuple đặc biệt ▪ ▪ ▪ ▪ ▪ Range chứa số nguyên Range nhanh nhiều Range chiếm nhớ Range hỗ trợ mục cắt (nhưng đặc biệt) Không nên coi Range Tuple!!! TRƯƠNG XUÂN NAM 25 Phần Bài tập TRƯƠNG XUÂN NAM 26 Bài tập TRƯƠNG XUÂN NAM 27 Bài tập ▪ ▪ ▪ ▪ ▪ TRƯƠNG XUÂN NAM 28 ... (nhưng đặc biệt) Không nên coi Range Tuple!!! TRƯƠNG XUÂN NAM 25 Phần Bài tập TRƯƠNG XUÂN NAM 26 Bài tập TRƯƠNG XUÂN NAM 27 Bài tập ▪ ▪ ▪ ▪ ▪ TRƯƠNG XUÂN NAM 28 ... TRƯƠNG XUÂN NAM 15 Một số thao tác thông dụng với list TRƯƠNG XUÂN NAM 16 Phần Tuple (hàng) TRƯƠNG XUÂN NAM 17 Tuple dạng readonly list ▪ Tuple = dãy đối tượng (list), bị thay đổi giá trị q trình. .. trị x = "Trương Xuân Nam" .split() x.sort(key=str.lower) print(x) TRƯƠNG XUÂN NAM 12 Ví dụ xếp với list a = ['123', '13', '90', "-1 ", -1 00] a.sort() # lỗi, phần tử khơng kiểu a [-1 ] = '-1 00' # thay

Ngày đăng: 09/08/2021, 18:16

Tài liệu cùng người dùng

Tài liệu liên quan