Khởi động
Trong bài trước chúng ta đã biết cách dùng lệnh append để thêm phần tử vào cuối một danh sách. Vậy Python có những lệnh nào dùng để:
- Xóa nhanh một danh sách?
- Chèn thêm phần tử vào đầu hay giữa danh sách?
- Kiểm tra một phần tử có nằm trong một danh sách hay không?
Hướng dẫn giải:
Để xóa toàn bộ danh sách dùng lệnh clear( ), để xóa phần tử có giá trị là value dùng lệnh remove(value).
Để chèn thêm phần tử, dùng lệnh insert.
Dùng toán tử in để kiểm tra một giá trị có nằm trong danh sách hay không.
1. Duyệt danh sách với toán tử in
Câu 1. Giả sử A = ["0", "1", "01", "10"]. Các biểu thức sau trả về giá trị đúng hay sai?
a) 1 in A
b) "01" in A
Hướng dẫn giải:
a) False b) True
Câu 2. Hãy giải thích ý nghĩa từ khóa in trong câu lệnh sau:
for i in range (10):
<các lệnh>
Hướng dẫn giải:
Khi thực hiện lệnh này, i sẽ lần lượt nhận 10 giá trị đầu tiên của dãy.
Bài tập & Lời giải
2. Một số lệnh làm việc với danh sách
Câu 1. Khi nào thì lệnh A.append(1) và A.insert(0,1) có tác dụng giống nhau?
Câu 2. Danh sách A trước và sau lệnh insert( ) là [1, 4, 10, 0] và [1, 4, 10, 5, 0]. Lệnh đã dùng là gì?
Xem lời giải
Luyện tập
Câu 1. Cho dãy số [1, 2, 2, 3, 4, 5, 5]. Viết lệnh thực hiện:
a) Chèn số 1 vào ngay sau giá trị 1 của dãy.
b) Chèn số 3 và số 4 vào danh sách để dãy có số 3 và số 4 liền nhau hai lần.
Câu 2. Cho trước dãy số A. Viết chương trình thực hiện công việc sau:
- Xóa đi một phần tử ở chính giữa dãy nếu số phần tử của dãy là số lẻ.
- Xóa đi hai phần tử ở chính giữa của dãy nếu số phần tử là số chẵn.
Xem lời giải
Vận dụng
Câu 1. Viết chương trình nhập n từ bàn phím, tạo và in ra màn hình dãy số A bao gồm n số tự nhiên chẵn đầu tiên.
Câu 2. Dãy số Fibonacci được xác định như sau:
$F_{0} = 0$
$F_{1} = 1$
$F_{n} = F_{n-1} + F_{n-2}$ (với $n\geq2$).
Viết chương trinh nhập n từ bàn phím, tạo và in ra màn hình dãy số A bao gồm n số hạng đầu của dãy Fibobacci.