GIÁO TRÌNH - Hướng dẫn lập trình Python cơ bản (Lê Trọng Nhân & Các TG)



Python là một ngôn ngữ lập trình cấp cao và dễ tiếp cận hơn đối với những người mới bắt đầu học ngôn ngữ lập trình. Nếu so sánh Python với các ngôn ngữ truyền thống như Pascal hay C thì mức độ phức tạp của Python là thấp hơn. Một số ưu điểm của ngôn ngữ lập trình Python có thể kể ra như sau:

• Python có cú pháp rất đơn giản. Nó dễ đọc và viết hơn rất nhiều khi so sánh với những ngôn ngữ lập trình khác như Pascal hay C. Mặc dù đôi lúc sự đơn giản này có thể gây ra một số phiền phức trong việc quản lý chương trình.

Tuy nhiên Python làm cho việc lập trình trở đơn giản hơn, đặc biệt là các tác vụ nhập xuất (input và output), cho phép bạn tập trung vào những giải pháp chứ không phải cú pháp của ngôn ngữ lập trình. Một cách so sánh trừu tượng, Python tạo điều kiện cho bạn "giao tiếp ngôn ngữ", hơn là việc phải "học ngôn ngữ" một cách truyền thống.


NỘI DUNG:


I Các câu lệnh Python cơ bản 7

Chương 1. Hướng dẫn cài đặt Python và Pycharm 9

1 Giới thiệu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10

2 Cài đặt Python trên Windows . . . . . . . . . . . . . . . . . . . . . . . . 11

3 Giao diện lập trình Python GUI . . . . . . . . . . . . . . . . . . . . . . . 12

4 Cài đặt PyCharm trên Window . . . . . . . . . . . . . . . . . . . . . . . . 14

5 Hướng dẫn setup và chạy chương trình với PyCharm . . . . . . . . . . 18

6 Chương trình đầu tiên trên PyCharm . . . . . . . . . . . . . . . . . . . . 22

7 Một số thao tác khác trên PyCharm . . . . . . . . . . . . . . . . . . . . . 23

8 Câu hỏi ôn tập . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25

Chương 2. Hiển thị kết quả trên Python 27

1 Giới thiệu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28

2 Hiển thị nhiều thông tin . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28

3 Hiển thị với kí tự phân cách . . . . . . . . . . . . . . . . . . . . . . . . . . 28

4 Hiển thị với kí tự kết thúc . . . . . . . . . . . . . . . . . . . . . . . . . . . 29

5 Hiển thị với số thập phân . . . . . . . . . . . . . . . . . . . . . . . . . . . 29

6 Câu hỏi ôn tập . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30

Chương 3. Nhập dữ liệu và Kiểu dữ liệu 31

1 Giới thiệu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32

2 Câu lệnh nhập dữ liệu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32

3 Kiểu số nguyên trên Python . . . . . . . . . . . . . . . . . . . . . . . . . 32

3.1 Khai báo một biến kiểu số nguyên . . . . . . . . . . . . . . . . . 32

3.2 Nhập số nguyên từ bàn phím . . . . . . . . . . . . . . . . . . . . 33

3.3 Các phép toán trên số nguyên . . . . . . . . . . . . . . . . . . . 33

4 Kiểu số thực trên Python . . . . . . . . . . . . . . . . . . . . . . . . . . . 34

4.1 Khai báo một biến kiểu số thực . . . . . . . . . . . . . . . . . . . 34

4.2 Nhập số thực từ bàn phím . . . . . . . . . . . . . . . . . . . . . . 34

4.3 Các phép toán trên số thực . . . . . . . . . . . . . . . . . . . . . 34

5 Xử lý lỗi nhập liệu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35

6 Câu hỏi ôn tập . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36

Chương 4. Câu lệnh điều kiện IF 39

1 Giới thiệu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40

2 Câu lệnh if . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40

Hướng dẫn lập trình Python cơ bản Trang 3

Downloaded by EBOOKBKMT VMTC (nguyenphihung1009@gmail.com)

lOMoARcPSD|2935381

3 Câu lệnh if else . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41

4 Câu lệnh if elif else . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42

5 Câu lệnh lồng nhau . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42

6 Bài tập . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43

7 Câu hỏi ôn tập . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46

Chương 5. Mảng một chiều - Cấu trúc lặp FOR 49

1 Giới thiệu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50

2 Khai báo và truy xuất mảng một chiều . . . . . . . . . . . . . . . . . . . 50

3 Cấu trúc lặp for . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50

4 Nhập mảng từ bàn phím . . . . . . . . . . . . . . . . . . . . . . . . . . . 52

5 Bài tập . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52

6 Câu hỏi ôn tập . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55

Chương 6. Mảng nhiều chiều - FOR lồng nhau 57

1 Giới thiệu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58

2 Thêm một file Python . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58

3 Khai báo và truy xuất mảng nhiều chiều . . . . . . . . . . . . . . . . . . 59

4 Duyệt mảng nhiều chiều . . . . . . . . . . . . . . . . . . . . . . . . . . . 61

5 Nhập mảng nhiều chiều từ bàn phím . . . . . . . . . . . . . . . . . . . 61

6 Bài tập . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62

7 Câu hỏi ôn tập . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64

Chương 7. Cấu trúc lặp while 67

1 Giới thiệu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68

2 Cú pháp vòng lặp while . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68

2.1 Câu lệnh break và continue trong vòng lặp while . . . . . . . 69

2.1.1 Câu lệnh break . . . . . . . . . . . . . . . . . . . . . . . 69

2.1.2 Câu lệnh continue . . . . . . . . . . . . . . . . . . . . . 69

2.2 Sử dụng while trên một dòng . . . . . . . . . . . . . . . . . . . . 69

3 Cú pháp vòng lặp while-else . . . . . . . . . . . . . . . . . . . . . . . . . 69

4 Bài tập . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70

5 Câu hỏi ôn tập . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72

Chương 8. Các thao tác trên FILE 75

1 Giới thiệu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76

2 Ghi dữ liệu ra File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76

3 Đọc dữ liệu từ File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77

4 Đọc mảng 1 chiều từ File . . . . . . . . . . . . . . . . . . . . . . . . . . . 78

5 Đọc mảng nhiều chiều từ File . . . . . . . . . . . . . . . . . . . . . . . . 79

6 Bài tập . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81

7 Câu hỏi ôn tập . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82

Chương 9. Hàm và lời gọi hàm 85

1 Giới thiệu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86

2 Định nghĩa hàm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86

3 Gọi Hàm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86

3.1 Đối Số Mặc Định . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87

3.2 Giá Trị Trả Về . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87

3.3 Câu lệnh pass . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88

Trang 4 The Dariu Foundation

Downloaded by EBOOKBKMT VMTC (nguyenphihung1009@gmail.com)

lOMoARcPSD|2935381

4 Viết hàm để tính giai thừa . . . . . . . . . . . . . . . . . . . . . . . . . . . 89

4.1 Viết hàm sử dụng vòng lặp for . . . . . . . . . . . . . . . . . . . 89

4.2 Viết hàm sử dụng đệ quy . . . . . . . . . . . . . . . . . . . . . . . 89

5 Bài tập . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90

6 Câu hỏi ôn tập . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91

Chương 10. Cấu trúc dữ liệu nâng cao trên Python 95

1 Giới thiệu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96

2 Chuỗi (string) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96

2.1 Nối chuỗi, thay đổi hoặc xóa chuỗi . . . . . . . . . . . . . . . . 96

2.2 Phương thức dùng với biến kiểu chuỗi . . . . . . . . . . . . . . 97

3 Cấu trúc dữ liệu Tuple . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97

3.1 Khởi tạo và truy xuất các phần tử trong Tuple . . . . . . . . . . 97

3.2 Các thao tác với Tuple . . . . . . . . . . . . . . . . . . . . . . . . 98

3.3 Khi nào sử dụng Tuple . . . . . . . . . . . . . . . . . . . . . . . . 98

4 Cấu trúc dữ liệu tập hợp (Set) . . . . . . . . . . . . . . . . . . . . . . . . 99

4.1 Khởi tạo và truy xuất các phần tử trong tập hợp . . . . . . . . . 99

4.2 Thay đổi tập hợp . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99

4.3 Các phép toán trong tập hợp . . . . . . . . . . . . . . . . . . . . 100

4.3.1 Phép hợp (Union) . . . . . . . . . . . . . . . . . . . . . 100

4.3.2 Phép giao (Intersection) . . . . . . . . . . . . . . . . . 100

4.3.3 Phép hiệu (Difference) . . . . . . . . . . . . . . . . . . 100

4.3.4 Hiệu đối xứng của hai tập hợp (Symmetric difference)101

4.4 Khi nào sử dụng tập hợp . . . . . . . . . . . . . . . . . . . . . . . 101

5 Cấu trúc dữ liệu từ điển (Dictionary) . . . . . . . . . . . . . . . . . . . . 101

5.1 Khởi tạo và truy xuất các phần tử trong từ điển . . . . . . . . . 101

5.2 Thêm và cập nhật phần tử trong từ điển . . . . . . . . . . . . . 102

5.3 Xóa phần tử khỏi từ điển . . . . . . . . . . . . . . . . . . . . . . . 102

5.4 Một số phương thức hay dùng trong từ điển . . . . . . . . . . . 103

5.5 Khi nào sử dụng từ điển . . . . . . . . . . . . . . . . . . . . . . . 103

6 Bài tập . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103

7 Câu hỏi ôn tập . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104

II Dự án ứng dụng 107

Chương 11. Trợ lý ảo trên Python - Văn bản thành Giọng nói 109

1 Giới thiệu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110

2 Tạo mới một ứng dụng . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110

3 Cài đặt thư viện . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111

4 Hiện thực chương trình . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112

5 Câu hỏi ôn tập . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113

Chương 12. Trợ lý ảo trên Python - Nhận diện giọng nói 115

1 Giới thiệu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 116

2 Cài đặt thư viện . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 116

3 Hiện thực chương trình . . . . . . . . . . . . . . . . . . . . . . . . . . . . 117

4 Câu hỏi ôn tập . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119

Hướng dẫn lập trình Python cơ bản Trang 5

Downloaded by EBOOKBKMT VMTC (nguyenphihung1009@gmail.com)

lOMoARcPSD|2935381

Chương 13. Trợ lý ảo trên Python - Xây dựng trí thông minh 121

1 Giới thiệu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122

2 Truy xuất ngày hiện tại . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122

3 Hoàn thiện chương trình . . . . . . . . . . . . . . . . . . . . . . . . . . . 122

4 Câu hỏi ôn tập . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 124

Chương 14. Lập trình giao diện trên Python 125

1 Giới thiệu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 126

2 Thiết kế giao diện . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 126

3 Thêm đối tượng giao diện vào cửa sổ . . . . . . . . . . . . . . . . . . . . 127

4 Câu hỏi ôn tập . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 130

Chương 15. Tạo hàm xử lý cho nút nhấn 131

1 Giới thiệu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132

2 Khai báo hàm xử lý . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132

3 Hiện thực hàm xử lý cho nút nhấn . . . . . . . . . . . . . . . . . . . . . 133

4 Bài tập . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133

5 Câu hỏi ôn tập . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 134

Chương 16. Xử lý lỗi trên giao diện 135

1 Giới thiệu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 136

2 Xử lý lỗi nhập liệu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 136

3 Câu hỏi ôn tập



LINK 1 - TÌM KIẾM SÁCH/TÀI LIỆU ONLINE (GIÁ ƯU ĐÃI NHẤT)

LINK 2 - TÌM KIẾM SÁCH/TÀI LIỆU ONLINE (GIÁ ƯU ĐÃI NHẤT)

LINK 3 - TÌM KIẾM SÁCH/TÀI LIỆU ONLINE (GIÁ ƯU ĐÃI NHẤT)

LINK 4 - TÌM KIẾM SÁCH/TÀI LIỆU ONLINE (GIÁ ƯU ĐÃI NHẤT)




LINK DOWNLOAD



Python là một ngôn ngữ lập trình cấp cao và dễ tiếp cận hơn đối với những người mới bắt đầu học ngôn ngữ lập trình. Nếu so sánh Python với các ngôn ngữ truyền thống như Pascal hay C thì mức độ phức tạp của Python là thấp hơn. Một số ưu điểm của ngôn ngữ lập trình Python có thể kể ra như sau:

• Python có cú pháp rất đơn giản. Nó dễ đọc và viết hơn rất nhiều khi so sánh với những ngôn ngữ lập trình khác như Pascal hay C. Mặc dù đôi lúc sự đơn giản này có thể gây ra một số phiền phức trong việc quản lý chương trình.

Tuy nhiên Python làm cho việc lập trình trở đơn giản hơn, đặc biệt là các tác vụ nhập xuất (input và output), cho phép bạn tập trung vào những giải pháp chứ không phải cú pháp của ngôn ngữ lập trình. Một cách so sánh trừu tượng, Python tạo điều kiện cho bạn "giao tiếp ngôn ngữ", hơn là việc phải "học ngôn ngữ" một cách truyền thống.


NỘI DUNG:


I Các câu lệnh Python cơ bản 7

Chương 1. Hướng dẫn cài đặt Python và Pycharm 9

1 Giới thiệu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10

2 Cài đặt Python trên Windows . . . . . . . . . . . . . . . . . . . . . . . . 11

3 Giao diện lập trình Python GUI . . . . . . . . . . . . . . . . . . . . . . . 12

4 Cài đặt PyCharm trên Window . . . . . . . . . . . . . . . . . . . . . . . . 14

5 Hướng dẫn setup và chạy chương trình với PyCharm . . . . . . . . . . 18

6 Chương trình đầu tiên trên PyCharm . . . . . . . . . . . . . . . . . . . . 22

7 Một số thao tác khác trên PyCharm . . . . . . . . . . . . . . . . . . . . . 23

8 Câu hỏi ôn tập . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25

Chương 2. Hiển thị kết quả trên Python 27

1 Giới thiệu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28

2 Hiển thị nhiều thông tin . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28

3 Hiển thị với kí tự phân cách . . . . . . . . . . . . . . . . . . . . . . . . . . 28

4 Hiển thị với kí tự kết thúc . . . . . . . . . . . . . . . . . . . . . . . . . . . 29

5 Hiển thị với số thập phân . . . . . . . . . . . . . . . . . . . . . . . . . . . 29

6 Câu hỏi ôn tập . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30

Chương 3. Nhập dữ liệu và Kiểu dữ liệu 31

1 Giới thiệu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32

2 Câu lệnh nhập dữ liệu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32

3 Kiểu số nguyên trên Python . . . . . . . . . . . . . . . . . . . . . . . . . 32

3.1 Khai báo một biến kiểu số nguyên . . . . . . . . . . . . . . . . . 32

3.2 Nhập số nguyên từ bàn phím . . . . . . . . . . . . . . . . . . . . 33

3.3 Các phép toán trên số nguyên . . . . . . . . . . . . . . . . . . . 33

4 Kiểu số thực trên Python . . . . . . . . . . . . . . . . . . . . . . . . . . . 34

4.1 Khai báo một biến kiểu số thực . . . . . . . . . . . . . . . . . . . 34

4.2 Nhập số thực từ bàn phím . . . . . . . . . . . . . . . . . . . . . . 34

4.3 Các phép toán trên số thực . . . . . . . . . . . . . . . . . . . . . 34

5 Xử lý lỗi nhập liệu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35

6 Câu hỏi ôn tập . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36

Chương 4. Câu lệnh điều kiện IF 39

1 Giới thiệu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40

2 Câu lệnh if . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40

Hướng dẫn lập trình Python cơ bản Trang 3

Downloaded by EBOOKBKMT VMTC (nguyenphihung1009@gmail.com)

lOMoARcPSD|2935381

3 Câu lệnh if else . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41

4 Câu lệnh if elif else . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42

5 Câu lệnh lồng nhau . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42

6 Bài tập . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43

7 Câu hỏi ôn tập . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46

Chương 5. Mảng một chiều - Cấu trúc lặp FOR 49

1 Giới thiệu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50

2 Khai báo và truy xuất mảng một chiều . . . . . . . . . . . . . . . . . . . 50

3 Cấu trúc lặp for . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50

4 Nhập mảng từ bàn phím . . . . . . . . . . . . . . . . . . . . . . . . . . . 52

5 Bài tập . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52

6 Câu hỏi ôn tập . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55

Chương 6. Mảng nhiều chiều - FOR lồng nhau 57

1 Giới thiệu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58

2 Thêm một file Python . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58

3 Khai báo và truy xuất mảng nhiều chiều . . . . . . . . . . . . . . . . . . 59

4 Duyệt mảng nhiều chiều . . . . . . . . . . . . . . . . . . . . . . . . . . . 61

5 Nhập mảng nhiều chiều từ bàn phím . . . . . . . . . . . . . . . . . . . 61

6 Bài tập . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62

7 Câu hỏi ôn tập . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64

Chương 7. Cấu trúc lặp while 67

1 Giới thiệu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68

2 Cú pháp vòng lặp while . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68

2.1 Câu lệnh break và continue trong vòng lặp while . . . . . . . 69

2.1.1 Câu lệnh break . . . . . . . . . . . . . . . . . . . . . . . 69

2.1.2 Câu lệnh continue . . . . . . . . . . . . . . . . . . . . . 69

2.2 Sử dụng while trên một dòng . . . . . . . . . . . . . . . . . . . . 69

3 Cú pháp vòng lặp while-else . . . . . . . . . . . . . . . . . . . . . . . . . 69

4 Bài tập . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70

5 Câu hỏi ôn tập . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 72

Chương 8. Các thao tác trên FILE 75

1 Giới thiệu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76

2 Ghi dữ liệu ra File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76

3 Đọc dữ liệu từ File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77

4 Đọc mảng 1 chiều từ File . . . . . . . . . . . . . . . . . . . . . . . . . . . 78

5 Đọc mảng nhiều chiều từ File . . . . . . . . . . . . . . . . . . . . . . . . 79

6 Bài tập . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 81

7 Câu hỏi ôn tập . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82

Chương 9. Hàm và lời gọi hàm 85

1 Giới thiệu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86

2 Định nghĩa hàm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86

3 Gọi Hàm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86

3.1 Đối Số Mặc Định . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87

3.2 Giá Trị Trả Về . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87

3.3 Câu lệnh pass . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88

Trang 4 The Dariu Foundation

Downloaded by EBOOKBKMT VMTC (nguyenphihung1009@gmail.com)

lOMoARcPSD|2935381

4 Viết hàm để tính giai thừa . . . . . . . . . . . . . . . . . . . . . . . . . . . 89

4.1 Viết hàm sử dụng vòng lặp for . . . . . . . . . . . . . . . . . . . 89

4.2 Viết hàm sử dụng đệ quy . . . . . . . . . . . . . . . . . . . . . . . 89

5 Bài tập . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90

6 Câu hỏi ôn tập . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91

Chương 10. Cấu trúc dữ liệu nâng cao trên Python 95

1 Giới thiệu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96

2 Chuỗi (string) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96

2.1 Nối chuỗi, thay đổi hoặc xóa chuỗi . . . . . . . . . . . . . . . . 96

2.2 Phương thức dùng với biến kiểu chuỗi . . . . . . . . . . . . . . 97

3 Cấu trúc dữ liệu Tuple . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97

3.1 Khởi tạo và truy xuất các phần tử trong Tuple . . . . . . . . . . 97

3.2 Các thao tác với Tuple . . . . . . . . . . . . . . . . . . . . . . . . 98

3.3 Khi nào sử dụng Tuple . . . . . . . . . . . . . . . . . . . . . . . . 98

4 Cấu trúc dữ liệu tập hợp (Set) . . . . . . . . . . . . . . . . . . . . . . . . 99

4.1 Khởi tạo và truy xuất các phần tử trong tập hợp . . . . . . . . . 99

4.2 Thay đổi tập hợp . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99

4.3 Các phép toán trong tập hợp . . . . . . . . . . . . . . . . . . . . 100

4.3.1 Phép hợp (Union) . . . . . . . . . . . . . . . . . . . . . 100

4.3.2 Phép giao (Intersection) . . . . . . . . . . . . . . . . . 100

4.3.3 Phép hiệu (Difference) . . . . . . . . . . . . . . . . . . 100

4.3.4 Hiệu đối xứng của hai tập hợp (Symmetric difference)101

4.4 Khi nào sử dụng tập hợp . . . . . . . . . . . . . . . . . . . . . . . 101

5 Cấu trúc dữ liệu từ điển (Dictionary) . . . . . . . . . . . . . . . . . . . . 101

5.1 Khởi tạo và truy xuất các phần tử trong từ điển . . . . . . . . . 101

5.2 Thêm và cập nhật phần tử trong từ điển . . . . . . . . . . . . . 102

5.3 Xóa phần tử khỏi từ điển . . . . . . . . . . . . . . . . . . . . . . . 102

5.4 Một số phương thức hay dùng trong từ điển . . . . . . . . . . . 103

5.5 Khi nào sử dụng từ điển . . . . . . . . . . . . . . . . . . . . . . . 103

6 Bài tập . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103

7 Câu hỏi ôn tập . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104

II Dự án ứng dụng 107

Chương 11. Trợ lý ảo trên Python - Văn bản thành Giọng nói 109

1 Giới thiệu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110

2 Tạo mới một ứng dụng . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 110

3 Cài đặt thư viện . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111

4 Hiện thực chương trình . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112

5 Câu hỏi ôn tập . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113

Chương 12. Trợ lý ảo trên Python - Nhận diện giọng nói 115

1 Giới thiệu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 116

2 Cài đặt thư viện . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 116

3 Hiện thực chương trình . . . . . . . . . . . . . . . . . . . . . . . . . . . . 117

4 Câu hỏi ôn tập . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119

Hướng dẫn lập trình Python cơ bản Trang 5

Downloaded by EBOOKBKMT VMTC (nguyenphihung1009@gmail.com)

lOMoARcPSD|2935381

Chương 13. Trợ lý ảo trên Python - Xây dựng trí thông minh 121

1 Giới thiệu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122

2 Truy xuất ngày hiện tại . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122

3 Hoàn thiện chương trình . . . . . . . . . . . . . . . . . . . . . . . . . . . 122

4 Câu hỏi ôn tập . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 124

Chương 14. Lập trình giao diện trên Python 125

1 Giới thiệu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 126

2 Thiết kế giao diện . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 126

3 Thêm đối tượng giao diện vào cửa sổ . . . . . . . . . . . . . . . . . . . . 127

4 Câu hỏi ôn tập . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 130

Chương 15. Tạo hàm xử lý cho nút nhấn 131

1 Giới thiệu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132

2 Khai báo hàm xử lý . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132

3 Hiện thực hàm xử lý cho nút nhấn . . . . . . . . . . . . . . . . . . . . . 133

4 Bài tập . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133

5 Câu hỏi ôn tập . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 134

Chương 16. Xử lý lỗi trên giao diện 135

1 Giới thiệu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 136

2 Xử lý lỗi nhập liệu . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 136

3 Câu hỏi ôn tập



LINK 1 - TÌM KIẾM SÁCH/TÀI LIỆU ONLINE (GIÁ ƯU ĐÃI NHẤT)

LINK 2 - TÌM KIẾM SÁCH/TÀI LIỆU ONLINE (GIÁ ƯU ĐÃI NHẤT)

LINK 3 - TÌM KIẾM SÁCH/TÀI LIỆU ONLINE (GIÁ ƯU ĐÃI NHẤT)

LINK 4 - TÌM KIẾM SÁCH/TÀI LIỆU ONLINE (GIÁ ƯU ĐÃI NHẤT)




LINK DOWNLOAD

M_tả
M_tả

Không có nhận xét nào: