Khởi động
Giải câu hỏi mở đầu trang 111
Em đã được học những kiểu dữ liệu cơ bản của Python như số nguyên, số thực, xâu kí tự, kiểu dữ liệu logic. Tuy nhiên, khi em cần lưu một dãy các số hay một danh sách học sinh thì cần kiểu dữ liệu dạng danh sách (còn gọi là dãy hay mảng). Kiểu dữ liệu danh sách được dùng nhiều nhất trong Python là kiểu list.
Em hãy tìm một số dữ liệu kiểu danh sách thường gặp trên thực tế.
Liên hệ thực tế một số dữ liệu kiểu danh sách thường gặp
Một số dữ liệu kiểu danh sách thường gặp trên thực tế là: danh sách các học sinh trong lớp, bảng điểm, danh sách học sinh được khen thưởng, báo cáo các khoản thu, chi...
Hoạt động 1
Đáp án câu hỏi Hoạt động 1 trang 111
Khởi tạo dữ liệu danh sách như thế nào? Cách truy cập, thay đổi giá trị và xoá một phần tử trong danh sách như thế nào?
Dựa vào lý thuyết trong phần 1. Kiểu dữ liệu danh sách
- Khởi tạo dữ liệu danh sách: <tên list> = [<v1> , <v2> , …, <vn>]
- Truy cập các phần tử thông qua chỉ số, bắt đầu từ 0.
- Thay đổi giá trị của từng phần tử bằng lệnh gán hoặc xoá phần tử bằng lệnh del
? mục 1
Giải câu hỏi mục 1 trang 112
1. Cho danh sách A = [1, 0, "One”, 9, 15, "Two”, True, False]. Hãy cho biết giá trị các phần tử:
a) A[0]
b) A[2]
c) A[7]
d) A[len(A)]
Lệnh len() là lệnh tính độ dài của danh sách
a) A[0] = 1
b) A[2] = “One”
c) A[7] = False
d) A[len(A)]: lỗi chỉ số
2. Giả sử A là một danh sách các số, mỗi lệnh sau thực hiện công việc gì?
a) A = A + [10]
b) del A[0]
c) A = [100] + A
d) A[1]*25
Dựa vào kiến thức trong phần 1. Kiểu dữ liệu danh sách
a) Thêm phần tử 10 vào cuối danh sách
b) Xóa phần tử đầu tiên của danh sách
c) Thêm phần tử 100 vào đầu danh sách
d) Thiết lập biến A mới là tích của 25 với giá trị phần tử thứ hai của danh sách A
Hoạt động 2
Đáp án câu hỏi Hoạt động 2 trang 112
Quan sát các lệnh sau để biết cách dùng lệnh for duyệt lần lượt các phần tử của một danh sách.
Quan sát các lệnh
Có thể duyệt từng lần lượt các phần tử của một danh sách bằng lệnh for kết hợp với vùng giá trị của lệnh range().
? mục 2
Trả lời câu hỏi mục 2 trang 113
1. Giải thích các lệnh ở mỗi câu sau thực hiện công việc gì?
Có thể duyệt lần lượt các phần tử của danh sách bằng lệnh for kết hợp với vùng giá trị của lệnh range()
a) Gán S = 0;
Duyệt các phần tử trong danh sách A và tính tổng các phần tử lớn hơn 0 của A
Advertisements (Quảng cáo)
In kết quả S ra màn hình
b) Gán C = 0;
Duyệt các phần tử trong danh sách A và đếm số lượng các phần tử lớn hơn 0 của A
In kết quả C ra màn hình
2. Cho dãy số nguyên A, viết chương trình in ra các số chẵn của A.
Dựa vào kiến thức đã học để viết chương trình
A=[2, 6, 3, 6, 9]
for i in range(len(A)):
if(A[i]%2==0):
print (A[i], end = ” ")
Hoạt động 3
Hướng dẫn giải câu hỏi Hoạt động 3 trang 113
Quan sát các lệnh sau đây để biết cách thêm phần tử vào một danh sách bằng phương thức append().
Quan sát các lệnh
Cách thêm phần tử vào cuối một danh sách bằng phương thức append():
Cú pháp: .append()
? mục 3
Giải câu hỏi mục 3 trang 113
1. Sau khi thêm một phần tử vào danh sách A bằng lệnh append() thì độ dài danh sách A thay đổi như thế nào?
Độ dài danh sách A sẽ thêm phần tử trong dấu ( ) sau append vào đuôi danh sách.
Sau khi thêm một phần tử vào danh sách A bằng lệnh append() thì độ dài danh sách A tăng thêm 1.
2. Danh sách A sẽ như thế nào sau các lệnh sau?
Lệnh thêm phần tử vào cuối danh sách là .append()
Lệnh del là lệnh xóa một phần tử của danh sách
Sau lệnh ">>> A. append(100)”, danh sách A hiển thị [2, 4, 10, 1, 0, 100].
Sau lệnh ">>> del A[1]”, danh sách A hiển thị [2, 10, 1, 0, 100].
Luyện tập
Gợi ý giải câu hỏi Luyện tập trang 114
1. Viết lệnh xóa phần tử cuối cùng của danh sách A bằng lệnh del.
Dựa vào kiến thức đã học để viết lệnh
Lệnh xóa phần tử cuối cùng của danh sách A bằng lệnh del: del A[len(A)-1]
2. Có thể thêm một phần tử vào đầu danh sách được không? Nếu có thì nêu cách thực hiện.
Có thể thêm một phần tử vào đầu danh sách được
Có thể thêm một phần tử vào đầu danh sách được
A = [phần tử cần thêm] + A
Vận dụng
Hướng dẫn giải câu hỏi Vận dụng trang 114
Cho dãy số A. Viết chương trình tính giá trị và chỉ số của phần tử lớn nhất của A. Tương tự với bài toán tìm phần tử nhỏ nhất.
Dựa vào kiến thức đã học để viết chương trình
Chương trình tính giá trị và chỉ số của phần tử lớn nhất của A
Tương tự với bài toán tìm phần tử nhỏ nhất