### Câu 1
Cho danh sách `arr = [4, 10, 2, 8, 6, 12, 7]`.
a) Nếu sử dụng lệnh `arr.append(5)`, danh sách `arr` sẽ trở thành gì?
- Kết quả: `arr` sẽ trở thành `[4, 10, 2, 8, 6, 12, 7, 5]`.
b) Nếu sử dụng lệnh `arr.insert(2, 15)`, danh sách `arr` sẽ trở thành gì?
- Kết quả: `arr` sẽ trở thành `[4, 10, 15, 2, 8, 6, 12, 7]`.
c) Nếu sử dụng lệnh `arr.remove(8)`, danh sách `arr` sẽ trở thành gì?
- Kết quả: `arr` sẽ trở thành `[4, 10, 2, 6, 12, 7]`.
d) Nếu sử dụng lệnh `arr.pop(3)`, giá trị trả về là gì và danh sách `arr` sẽ trở thành gì?
- Giá trị trả về: `8` (vì `8` là phần tử tại chỉ số 3).
- Kết quả: `arr` sẽ trở thành `[4, 10, 2, 6, 12, 7]`.
### Câu 2
Hàm `tach_va_noi_tu(s)` có chức năng tách chuỗi `s` thành các từ và sau đó nối lại các từ đó bằng dấu `' ..'`.
Tuy nhiên, đoạn mã có một lỗi cú pháp. Đoạn mã đúng sẽ là:
```python
def tach_va_noi_tu(s):
return ' ..'.join(s.split())
```
Khi gọi hàm với đối số `c = "Hoc lan trinh Duthon"`, hàm sẽ thực hiện các bước sau:
1. `s.split()` sẽ tách chuỗi thành danh sách các từ: `["Hoc", "lan", "trinh", "Duthon"]`.
2. `' ..'.join(...)` sẽ nối các từ trong danh sách bằng dấu `' ..'`.
Kết quả khi gọi hàm với đối số trên sẽ là:
- `"Hoc ..lan ..trinh ..Duthon"`.
Hy vọng những thông tin trên sẽ giúp ích cho bạn!