Kiểu dữ liệu danh sách – xử lí danh sách trang 101 SGK Tin Học lớp 10 – Cánh Diều, mời các em tham khảo cùng Bumbii.
Chủ đề F. Giải quyết vấn đề với sự trợ giúp của máy tính. Bài 14F. Kiểu dữ liệu danh sách – xử lí danh sách.
KHỞI ĐỘNG
Có nhiều bài toán thực tế cần giải quyết mà trong đó dữ liệu có được ở dạng một bản liệt kê tuần tự (thường gọi là danh sách). Ví dụ: Từ danh sách kết quả một cuộc thi, hãy đưa ra danh sách những người đỗ trong kì thi đó. Em hãy đưa thêm ví dụ.
Đáp án:
– Danh sách những mặt hàng được bán trong một siêu thị điện máy (kèm theo bảng giá). Có thể cần tìm trong đó máy xay sinh tố có giá rẻ nhất.
– Danh sách các hộ gia đình trong một khu phố. Có thể cần đưa ra địa chỉ và tên chủ hộ của những hộ gia đình được công nhận là gia đình văn hoá.
KIỂU DỮ LIỆU DANH SÁCH
Hoạt động 1
1) Với gợi ý từ Ví dụ 1, em hãy viết câu lệnh Python để tạo ra một biến kiểu danh sách lưu trữ được dữ liệu cho ở Bảng 1.
2) Viết câu lệnh in ra phần tử thứ ba của danh sách được tạo ở yêu cầu 1.
3) Dùng hàm type() kiểm tra lại kiểu dữ liệu của biến vừa tạo ra.
4) Dùng hàm len() để biết kích thước của danh sách (độ dài hay số phần tử của danh sách).
Đáp án:
1) Nhiet_do = [38, 36, 37, 36, 38, 38, 37]
2) print(Nhiet_do[2])
3) type(Nhiet_do)
4) len(Nhiet_do)
MỘT SỐ HÀM VÀ THAO TÁC XỬ LÍ DANH SÁCH
Hoạt động 2
Hãy hình dung, nhóm em dùng một danh sách trong Python để lưu trữ và quản lí danh sách các bạn trong Câu lạc bộ Lập trình của lớp em. Trong tình huống ấy, nhóm em mong muốn Python cung cấp sẵn những công cụ nào ở dạng hàm để dễ thực hiện được việc quản lí danh sách câu lạc bộ?
Đáp án:
Các công cụ có thể cần để thực hiện: xác định số phần tử trong danh sách, xoá hay bổ sung phần tử vào danh sách, sắp xếp các phần tử,…
LUYỆN TẬP
Bài 1. Đọc chương trình sau đây và cho biết kết quả in ra màn hình. Em hãy soạn thảo và chạy chương trình để kiểm tra dự đoán của em.
Đáp án:
Chương trình sẽ in ra màn hình số phần tử không vượt quá 100.
Kết quả chương trình:
Bài 2
Bạn Thanh muốn tính trung bình cộng của nhiệt độ trung bình các ngày trong tuần. Thanh đã viết được đoạn chương trình nhập từ bàn phím nhiệt độ trung bình của bảy ngày trong tuần vào một danh sách (Hình 6). Em hãy giúp bạn Thanh viết tiếp những câu lệnh còn thiếu vào chỗ trống để máy tính đưa ra màn hình kết quả cần có.
Đáp án:
Tham khảo chương trình sau:
nh_d = [float(i) for i in input().split()]
tb = 0
for i in nh_d:
tb = tb + 1
print("Nhiệt độ trung bình: ", tb/7)
VẬN DỤNG
Camera đặt cạnh trạm thu phí đường cao tốc ghi nhận nhiều thông tin, trong đó có mảng số nhận dạng loại ô tô đi qua. Mỗi loại ô tô được mã hoá thành một số nguyên dương. Cho dãy số, mỗi số là mã hoá về loại của một ô tô đi qua trạm thu phí. Em hãy viết chương trình nhập dãy số mã hoá xe vào từ bàn phím và đưa ra màn hình số loại xe khác nhau đã được nhận dạng.
Ví dụ:
Input | Output |
2 4 2 5 4 5 2 5 4 5 5 | 3 |
Đáp án:
Hàm set trong Python là 1 tập hợp có một số tính chất sau: các phần tử trong tập hợp không có thứ tự và các phần tử này là duy nhất, không cho phép lặp lại.
Như vậy, ta có thể đếm được số loại xe khác nhau được nhận dạng.
Tham khảo chương trình sau:
s = input().split()
a = [int(j) for j in set(s)]
print(len(a))
CÂU HỎI TỰ KIỂM TRA
Trong các câu sau đây, những câu nào đúng?
1) Trong các ngôn ngữ lập trình bậc cao đều có kiểu dữ liệu để lưu trữ một dãy hữu hạn các phần tử.
2) Python bắt buộc các phần tử của một danh sách phải có cùng một kiểu dữ liệu.
3) Phải khởi tạo một danh sách trong Python bằng phép gán trong chương trình, không thể nhập các phần tử của danh sách từ bàn phím.
4) Python chỉ cung cấp những hàm sau đây để xử lí danh sách: append(), pop(), insert(), sort(), clear().
Đáp án:
1) Đúng.
2) Đúng.
3) Sai. Trong Python các phần tử của một danh sách có thể có kiểu dữ liệu khác nhau.
4) Sai. Có thể nhập các phần tử của danh sách từ bàn phím.
5) Sai. Python cung cấp rất nhiều công cụ để xử lí danh sách.
Xem thêm các bài khác tại Giải bài tập sách giáo khoa Tin học Lớp 10 – Cánh Diều
Thông tin liên hệ & mạng xã hội:
Website: https://bumbii.com/
Facebook: https://www.facebook.com/bumbiiapp
Pinterest: https://www.pinterest.com/bumbiitech
Không bao giờ từ bỏ hy vọng. Cố gắng mỗi ngày.