1. Trang chủ
  2. » Thể loại khác

Python basics

138 132 2

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Cấu trúc

  • I Các câu lnh Python c ban

    • Chng Hng dn cài t Python và Pycharm

      • Gii thiu

      • Cài t Python trên Windows

      • Giao din lp trình Python GUI

      • Cài t PyCharm trên Window

      • Hng dn setup và chay chng trình vi PyCharm

      • Chng trình u tiên trên PyCharm

      • Mt s thao tác khác trên PyCharm

      • Câu hoi ôn tp

    • Chng Hin thi kt qua trên Python

      • Gii thiu

      • Hin thi nhiu thông tin

      • In vi kí t phân cách

      • In vi kí t kt thúc

      • In vi s thp phân

      • Câu hoi ôn tp

    • Chng Nhp d liu và Kiu d liu

      • Gii thiu

      • Câu lnh nhp d liu

      • Kiu s nguyên trên Python

        • Khai báo mt bin kiu s nguyên

        • Nhp s nguyên t bàn phím

        • Các phép toán trên s nguyên

      • Kiu s thc trên Python

        • Khai báo mt bin kiu s thc

        • Nhp s thc t bàn phím

        • Các phép toán trên s thc

      • X lý li nhp liu

      • Câu hoi ôn tp

    • Chng Câu lnh iu kin IF

      • Gii thiu

      • Câu lnh if

      • Câu lnh if else

      • Câu lnh if elif else

      • Câu lnh lng nhau

      • Bài tp

      • Câu hoi ôn tp

    • Chng Mang mt chiu - Cu trúc lp FOR

      • Gii thiu

      • Khai báo và truy xut mang mt chiu

      • Cu trúc lp for

      • Nhp mang t bàn phím

      • Bài tp

      • Câu hoi ôn tp

    • Chng Mang nhiu chiu - FOR lng nhau

      • Gii thiu

      • Thêm mt file Python

      • Khai báo và truy xut mang nhiu chiu

      • Duyt mang nhiu chiu

      • Nhp mang nhiu chiu t bàn phím

      • Bài tp

      • Câu hoi ôn tp

    • Chng Cu trúc lp while

      • Gii thiu

      • Cú pháp vòng lp while

        • Câu lnh break và continue trong vòng lp while

          • Câu lnh break

          • Câu lnh continue

        • S dung while trên mt dòng

      • Cú pháp vòng lp while-else

      • Bài tp

      • Câu hoi ôn tp

    • Chng Các thao tác trên FILE

      • Gii thiu

      • Ghi d liu ra File

      • Ðoc d liu t File

      • Ðoc mang 1 chiu t File

      • Ðoc mang nhiu chiu t File

      • Bài tp

      • Câu hoi ôn tp

    • Chng Hàm và li goi hàm

      • Gii thiu

      • Ðinh nghıa hàm

      • Goi Hàm

        • Ði S Mc Ðinh

        • Giá Tri Tra V

        • Câu lnh pass

      • Vit hàm tính giai tha

        • Vit hàm s dung vòng lp for

        • Vit hàm s dung quy

      • Bài tp

      • Câu hoi ôn tp

    • Chng Cu trúc d liu nâng cao trên Python

      • Gii thiu

      • Chui (string)

        • Ni chui, thay i hoc xóa chui

        • Phng thc dùng vi bin kiu chui

      • Cu trúc d liu Tuple

        • Khi tao và truy xut các phn t trong Tuple

        • Các thao tác vi Tuple

        • Khi nào s dung Tuple

      • Cu trúc d liu tp hp (Set)

        • Khi tao và truy xut các phn t trong tp hp

        • Thay i tp hp

        • Các phép toán trong tp hp

          • Phép hp (Union)

          • Phép giao (Intersection)

          • Phép hiu (Difference)

          • Hiu i xng cua hai tp hp (Symmetric difference)

        • Khi nào s dung tp hp

      • Cu trúc d liu t in (Dictionary)

        • Khi tao và truy xut các phn t trong t in

        • Thêm và cp nht phn t trong t in

        • Xóa phn t khoi t in

        • Mt s phng thc hay dùng trong t in

        • Khi nào s dung t in

      • Bài tp

      • Câu hoi ôn tp

  • II D án ng dung

    • Chng Tr lý ao trên Python - Van ban thành Giong nói

      • Gii thiu

      • Tao mi mt ng dung

      • Cài t th vin

      • Hin thc chng trình

      • Câu hoi ôn tp

    • Chng Tr lý ao trên Python - Nhn din giong nói

      • Gii thiu

      • Cài t th vin

      • Hin thc chng trình

      • Câu hoi ôn tp

    • Chng Tr lý ao trên Python - Xây dng trí thông minh

      • Gii thiu

      • Truy xut ngày hin tai

      • Hoàn thin chng trình

      • Câu hoi ôn tp

    • Chng Lp trình giao din trên Python

      • Gii thiu

      • Thit k giao din

      • Thêm i tng giao din vào ca s

      • Câu hoi ôn tp

    • Chng Tao hàm x lý cho nút nhn

      • Gii thiu

      • Khai báo hàm x lý

      • Hin thc hàm x lý cho nút nhn

      • Bài tp

      • Câu hoi ôn tp

    • Chng X lý li trên giao din

      • Gii thiu

      • X lý li nhp liu

      • Câu hoi ôn tp

Nội dung

Lê Trọng Nhân - Nguyễn Trần Hữu Nguyên - Võ Tấn Phương Nguyễn Thanh Hải - Phạm Văn Vinh Lê Phương Nam - Băng Ngọc Bảo Tâm Trang The Dariu Foundation Mục lục I Các câu lệnh Python Chương Hướng dẫn cài đặt Python Pycharm Giới thiệu Cài đặt Python Windows Giao diện lập trình Python GUI Cài đặt PyCharm Window Hướng dẫn setup chạy chương trình với PyCharm Chương trình PyCharm Một số thao tác khác PyCharm Câu hỏi ôn tập 10 11 13 14 18 22 23 25 Chương Hiển thị kết Python Giới thiệu Hiển thị nhiều thông tin In với kí tự phân cách In với kí tự kết thúc In với số thập phân Câu hỏi ôn tập 27 28 28 28 29 29 30 31 32 32 32 32 33 33 34 34 34 34 35 36 Chương Câu lệnh điều kiện IF Giới thiệu Câu lệnh if 39 40 40 Chương Nhập liệu Kiểu liệu Giới thiệu Câu lệnh nhập liệu Kiểu số nguyên Python 3.1 Khai báo biến kiểu số nguyên 3.2 Nhập số nguyên từ bàn phím 3.3 Các phép toán số nguyên Kiểu số thực Python 4.1 Khai báo biến kiểu số thực 4.2 Nhập số thực từ bàn phím 4.3 Các phép tốn số thực Xử lý lỗi nhập liệu Câu hỏi ôn tập Hướng dẫn lập trình Python Trang 3 Câu lệnh if else Câu lệnh if elif else Câu lệnh lồng Bài tập Câu hỏi ôn tập Chương Mảng chiều - Cấu trúc lặp FOR Giới thiệu Khai báo truy xuất mảng chiều Cấu trúc lặp for Nhập mảng từ bàn phím Bài tập Câu hỏi ôn tập Chương Mảng nhiều chiều - FOR lồng Giới thiệu Thêm file Python Khai báo truy xuất mảng nhiều chiều Duyệt mảng nhiều chiều Nhập mảng nhiều chiều từ bàn phím Bài tập Câu hỏi ôn tập 41 42 42 43 46 49 50 50 50 52 52 55 57 58 58 59 61 61 62 64 Chương Cấu trúc lặp while Giới thiệu Cú pháp vòng lặp while 2.1 Câu lệnh break continue vòng lặp while 2.1.1 Câu lệnh break 2.1.2 Câu lệnh continue 2.2 Sử dụng while dòng Cú pháp vòng lặp while-else Bài tập Câu hỏi ôn tập 67 68 68 69 69 69 69 69 70 72 Chương Các thao tác FILE Giới thiệu Ghi liệu File Đọc liệu từ File Đọc mảng chiều từ File Đọc mảng nhiều chiều từ File Bài tập Câu hỏi ôn tập 75 76 76 77 78 79 81 82 Chương Hàm lời gọi hàm Giới thiệu Định nghĩa hàm Gọi Hàm 3.1 Đối Số Mặc Định 3.2 Giá Trị Trả Về 3.3 Câu lệnh pass 85 86 86 86 87 87 88 Trang The Dariu Foundation Viết hàm để tính giai thừa 4.1 Viết hàm sử dụng vòng lặp for 4.2 Viết hàm sử dụng đệ quy Bài tập Câu hỏi ôn tập 89 89 89 90 91 Chương 10 Cấu trúc liệu nâng cao Python 95 Giới thiệu 96 Chuỗi (string) 96 2.1 Nối chuỗi, thay đổi xóa chuỗi 96 2.2 Phương thức dùng với biến kiểu chuỗi 97 Cấu trúc liệu Tuple 97 3.1 Khởi tạo truy xuất phần tử Tuple 97 3.2 Các thao tác với Tuple 98 3.3 Khi sử dụng Tuple 98 Cấu trúc liệu tập hợp (Set) 99 4.1 Khởi tạo truy xuất phần tử tập hợp 99 4.2 Thay đổi tập hợp 99 4.3 Các phép toán 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 hai tập hợp (Symmetric difference)101 4.4 Khi sử dụng tập hợp 101 Cấu trúc liệu từ điển (Dictionary) 101 5.1 Khởi tạo truy xuất phần tử từ điển 101 5.2 Thêm cập nhật phần tử 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 từ điển 103 5.5 Khi sử dụng từ điển 103 Bài tập 103 Câu hỏi ôn tập 104 II Dự án ứng dụng 107 Chương 11 Trợ lý ảo Python - Văn thành Giọng nói Giới thiệu Tạo ứng dụng Cài đặt thư viện Hiện thực chương trình Câu hỏi ôn tập Chương 12 Trợ lý ảo Python - Nhận diện giọng nói Giới thiệu Cài đặt thư viện Hiện thực chương trình Câu hỏi ôn tập Hướng dẫn lập trình Python 109 110 110 111 112 113 115 116 116 117 119 Trang Chương 13 Trợ lý ảo Python - Xây dựng trí thông minh Giới thiệu Truy xuất ngày Hồn thiện chương trình Câu hỏi ôn tập 121 122 122 122 124 Chương 14 Lập trình giao diện Python Giới thiệu Thiết kế giao diện Thêm đối tượng giao diện vào cửa sổ Câu hỏi ôn tập 125 126 126 127 130 131 132 132 133 133 134 Chương 15 Tạo hàm xử lý cho nút nhấn Giới thiệu Khai báo hàm xử lý Hiện thực hàm xử lý cho nút nhấn Bài tập Câu hỏi ôn tập Chương 16 Xử lý lỗi giao diện 135 Giới thiệu 136 Xử lý lỗi nhập liệu 136 Câu hỏi ôn tập 138 Trang The Dariu Foundation Phần I Các câu lệnh Python Hướng dẫn lập trình Python Trang CHƯƠNG Hướng dẫn cài đặt Python Pycharm Giới thiệu Python ngơn ngữ lập trình cấp cao dễ tiếp cận người bắt đầu học ngôn ngữ lập trình Nếu so sánh Python với ngơn ngữ truyền thống Pascal hay C mức độ phức tạp Python thấp Một số ưu điểm ngơn ngữ lập trình Python kể sau: • Python có cú pháp đơn giản Nó dễ đọc viết nhiều so sánh với ngơn ngữ lập trình khác Pascal hay C Mặc dù đôi lúc đơn giản gây số phiền phức 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 tác vụ nhập xuất (input output), cho phép bạn tập trung vào giải pháp cú pháp 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ữ", việc phải "học ngôn ngữ" cách truyền thống • Mã nguồn mở rộng rãi: Đây yếu tố quan trọng dành cho người bắt đầu Vì mã nguồn mở, bạn khơng sử dụng phần mềm, chương trình viết Python mà cịn thay đổi mã nguồn Python có cộng đồng rộng lớn, khơng ngừng cải thiện lần cập nhật Rất nhiều mã nguồn mở liên quan đến trí tuệ nhân tạo hay nhận diện giọng nói có sẵn Python, để người dùng phát triển ứng dụng cao cấp • Tương thích đa tảng: Rất nhiều hệ thống, từ máy tính bo mạch nhúng, chí bo mạch có tài nguyên thấp MicroBit, hỗ trợ ngơn ngữ lập trình Python Do đó, bạn hình dung rằng, phần mềm cần phát triển lần sử dụng cho nhiều tảng khác Chỉ với thay đổi nhỏ, phần mềm chạy máy tính chạy bo mạch mini Như vậy, thấy rằng, ngơn ngữ lập trình Python khái niệm rộng Tùy vào việc phát triển ứng dụng tảng nào, mà phần mềm kèm phù hợp sử dụng, minh họa Hình 1.1 Phần mềm khơng đóng vai trị chương trình để soạn thảo chương trình (hay cịn gọi lập trình), mà cịn đóng vai trị biên dịch từ ngơn ngữ lập trình sang ngơn ngữ thực thi Như minh họa Hình 1.1, lập trình Python máy tính, cần chương trình dịch từ ngơn ngữ Python sang ngơn ngữ mà máy tính hiểu Và chương trình này, thơng dụng Python3 Tuy nhiên, muốn lập trình ngơn ngữ Python cho mạch MicroBit, cần chương trình khác, chẳng hạn Mu Chương trình dịch từ ngơn ngữ Python sang ngơn ngữ mà mạch MicroBit hiểu Trong hình Hình 1.1, chúng tơi gọi Máy tính mạch MicroBit tảng thực thi Cuối cùng, phương thức dịch từ ngôn ngữ Python sang ngôn ngữ mà tảng thực thi hiểu được, gọi thông dịch (interpreter) Như thông dịch viên, phần mềm dịch câu lệnh python đầu tiên, thực thi Sau đó, lại dịch tiếp câu lệnh thứ 2, thực thi kết thúc chương trình Đây điểm vơ khác biệt so với ngơn ngữ Pascal, trình biên dịch dịch hết chương trình Trang 10 The Dariu Foundation Câu hỏi ơn tập Q trình thực trí thông minh cho trợ lý ảo, thuộc phần sau đây? A Xử lý đầu vào B Xử lý đầu C Xử lý giải thuật D Tất Để trợ lý ảo hoạt động liên tục người dùng nói "bye bye", câu lệnh tốt để thực? A if B while C for D Tất sai Để thực trí thơng minh cho trợ lý ảo, câu lệnh sử dụng cách hiệu nhất? A if B while C for D Tất sai Để truy xuất ngày hệ thống, thư viện cần thêm vào chương trình? A pyttsx3 B date C speech_recognition.Recognizer() D Tất câu lệnh Hạn chế câu lệnh so sánh chuỗi thực trí thơng minh cho trợ lý ảo gì? A Xác suất nhận lệnh từ người dùng thấp B Khi người dùng nói "hello hello", hệ thống không hiểu so sánh với "hello" C Hạn chế nhiều triển khai thực tế D Tất Đáp án C B Trang 124 A B D The Dariu Foundation CHƯƠNG 14 Lập trình giao diện Python Giới thiệu Cũng ngôn ngữ lập trình cấp cao khác, Python cho hội để thực ứng dụng với giao diện thân thiện Các ứng dụng gọi ứng dụng Winform Sở dĩ có tên vậy, giao diện ứng dụng thực giống với ứng dụng mà sử dụng hệ điều hành Windows Trong hướng dẫn này, thiết kế ứng dụng đơn giản: Người dùng nhập vào số nhấn nút Cộng Kết in chương trình, minh họa hình bên dưới: Hình 14.1: Một ứng dụng giao diện Python Rõ ràng, chương trình minh họa Hình 14.1 thân thiện với nhiều người dùng, thay tương tác từ hình console ứng dụng truyền thống Pascal phần hướng dẫn Python Tuy nhiên, với ứng dụng vậy, cần phải tỉ mỉ phần thiết kế giao diện, trước bắt đầu lập trình Điều đặc biệt Python, lập trình để tạo giao diện, thay kéo thả để thiết kế giao diện ngôn ngữ cao cấp khác Trong hướng dẫn này, chúng tơi trình bày câu lệnh đơn giản để thiết kế ứng dụng trình bày Hình 14.1 Thiết kế giao diện Trên Python, có hỗ trợ sẵn thư viện thiết kết giao diện tkinter Nguyên lý việc lập trình giao diện tạo cửa sổ (Windows), sau thêm đối tượng giao diện vào (khung nhập liệu, nút nhấn, v.v ) Chúng ta bắt đầu bước đầu tiên, tạo cửa sổ giao diện, với chương trình sau đây: import tkinter as tk window = tk Tk () window title ( " Python App " ) window geometry ( " 300 x200 " ) Trang 126 The Dariu Foundation window mainloop () Chương trình 14.1: Tạo cửa sổ (Windows) cho ứng dụng Trong Chương trình 14.1, câu lệnh dùng để thêm thư viện thiết kế giao diện tkinter Vì sau này, phải gõ nhiều từ khóa tkinter, đặt cho tên viết tắt, tk Tiếp theo đó, tạo cửa sổ câu lệnh tk.Tk(), thay đổi thông số cửa sổ tiêu đề, kích thước cửa sổ (ngang 300 cao 200 pixel) Cuối cùng, kích hoạt cửa sổ lên câu lệnh window.mainloop() Khi chạy chương trình này, có kết sau: Hình 14.2: Cửa sổ ứng dụng Windows Kết chương trình Hình 14.2 lý ứng dụng gọi ứng dụng winform, có cấu trúc mặc định cửa sổ hệ điều hành Windows: nút thu nhỏ, phóng to, tắt cửa sổ tiêu đề ứng dụng Thêm đối tượng giao diện vào cửa sổ Sau có khung cửa sổ tiêu chuẩn, bắt đầu thêm đối tượng giao diện vào Để hiển thị hướng dẫn nhập số A, cần đối tượng giao diện: Lable Text Đối tượng Label dùng để hiển thị, Text đối tượng dùng để nhập liệu Đối với đối tượng, phải dùng câu lệnh: Tạo đối tượng định vị trí khung cửa sổ Chương trình cho phần sau: import tkinter as tk window = tk Tk () window title ( " Python App " ) window geometry ( " 300 x200 " ) labelA = tk Label ( text = " Nhap so A : " ) labelA place ( x =5 , y =5 , width = 80 , height = 30) 10 11 txtA = tk Text () Hướng dẫn lập trình Python Trang 127 12 txtA place ( x = 80 , y =5 , width = 100 , height = 30) 13 14 window mainloop () Chương trình 14.2: Tạo cửa sổ (Windows) cho ứng dụng Trong Chương trình 14.3, thơng số x, y vị trí đối tượng giao diện, width height kích thước chiều rộng cao đối tượng Bạn thử thay đổi để thấy hiệu ứng thay đổi giao diện Với đoạn chương trình trên, kết sau: Hình 14.3: Thêm đối tượng giao diện lên ứng dụng Tiếp tục làm tương tự để thêm phần hướng dẫn nhập số B, phần hiển thị kết Hãy lưu ý chiều cao dòng 30, tọa độ y Nên dòng thứ tối thiểu tọa độ y phải 35 Chúng cho tọa độ y dịng 40 để có khoảng trống vừa phải Tương tự vậy, dòng tọa độ y 80 Nút nhấn thêm vào cuối Chương trình hồn thiện sau: import tkinter as tk window = tk Tk () window title ( " Python App " ) window geometry ( " 300 x200 " ) labelA = tk Label ( text = " Nhap so A : " ) labelA place ( x =5 , y =5 , width = 80 , height = 30) 10 11 12 txtA = tk Text () txtA place ( x = 80 , y =5 , width = 100 , height = 30) 13 14 15 labelB = tk Label ( text = " Nhap so B : " ) labelB place ( x =5 , y = 40 , width = 80 , height = 30) 16 17 18 txtB = tk Text () txtB place ( x = 80 , y =40 , width = 100 , height = 30) Trang 128 The Dariu Foundation 19 20 21 labelKQ = tk Label ( text = " Ket Qua : " ) labelKQ place ( x =5 , y = 75 , width = 80 , height = 30) 22 23 24 txtKQ = tk Text () txtKQ place ( x = 80 , y =75 , width = 100 , height = 30) 25 26 27 button = tk Button ( text = " Tong " ) button place ( x = , y = 125 , width =100 , height = 50) 28 29 window mainloop () Chương trình 14.3: Thiết kế giao diện hồn chỉnh cho ứng dụng Cuối cùng, giao diện ứng dụng minh họa Hình 14.4 Hình 14.4: Thiết kế giao diện hồn chỉnh Hướng dẫn lập trình Python Trang 129 Câu hỏi ôn tập Ứng dụng chạy Windows gọi gì? A Winform B Console C Log D Tất Để lập trình giao diện Python PyCharm cần phải: A Kéo thả đối tượng giao diện vào chương trình B Viết chương trình tạo giao diện C Python khơng hỗ trợ lập trình giao diện D Tất sai Thông thường, để in thông tin hướng dẫn ứng dụng, đối tượng giao diện dùng? A Label B Text C Button D Windows Thông thường, để người dùng nhập thông tin vào ứng dụng, đối tượng giao diện dùng? A Label B Text C Button D Windows Thông thường, để nhận tương tác từ người dùng, chẳng hạn nhấp chuột, đối tượng giao diện dùng? A Label B Text C Button D Windows Để chỉnh vị trí đối tượng giao diện ứng dụng, can thiệp vào thuộc tính nào? A Tọa độ x tọa độ y B Thông số width height C Cả câu D Tất sai Để chỉnh kích thước đối tượng giao diện ứng dụng, can thiệp vào thuộc tính nào? A Tọa độ x tọa độ y B Thông số width height C Cả câu D Tất sai Đáp án A B Trang 130 A B C A B The Dariu Foundation CHƯƠNG 15 Tạo hàm xử lý cho nút nhấn Giới thiệu Sau thiết kế xong giao diện, bước cần phải tạo hàm xử lý người dùng nhấn vào nút Tong Nút nhấn gần đối tượng tương tác người dùng lên ứng dụng chạy máy tính Hàm mà chuẩn bị tạo tự động gọi người dùng nhấp vào nút nhấn Khai báo hàm xử lý Trước tiên, khai báo hàm, đặt tên onClick Python Hàm trước mắt in thơng báo ngắn, ví dụ bên dưới: def onClick () : print ( " Nhan nut " ) Chương trình 15.1: Khai báo hàm onClick Tiếp theo, cần liên kết kiện nhấn nút Tong với hàm onClick Trong câu lệnh khởi tạo nút nhấn trước, hiệu chỉnh lại sau: button = tk Button ( text = " Tong " , command = onClick ) Chương trình 15.2: Khai báo hàm onClick Lưu ý quan trọng phải khai báo hàm onClick trước gán cho kiện nút nhấn Chương trình hồn chỉnh sau import tkinter as tk def onClick () : print ( " Nhan nut " ) window = tk Tk () window title ( " Python App " ) 10 labelA = tk Label ( text = " Nhap so A : " ) labelA place ( x =5 , y =5 , width = 80 , height = 30) 11 12 13 txtA = tk Text () txtA place ( x = 80 , y =5 , width = 100 , height = 30) 14 15 16 labelB = tk Label ( text = " Nhap so B : " ) labelB place ( x =5 , y = 40 , width = 80 , height = 30) 17 18 19 txtB = tk Text () txtB place ( x = 80 , y =40 , width = 100 , height = 30) 20 21 22 labelKQ = tk Label ( text = " Ket Qua : " ) labelKQ place ( x =5 , y = 75 , width = 80 , height = 30) 23 24 txtKQ = tk Text () Trang 132 The Dariu Foundation 25 txtKQ place ( x = 80 , y =75 , width = 100 , height = 30) 26 27 28 button = tk Button ( text = " Tong " , command = onClick ) button place ( x = , y = 125 , width =100 , height = 50) 29 30 31 window geometry ( " 300 x200 " ) window mainloop () Chương trình 15.3: Hồn thiện chương trình với kiện nút nhấn Hiện thực hàm xử lý cho nút nhấn Để thực cho hàm này, cần phải lấy thông tin từ đối tượng txtA txtB Dữ liệu từ đối tượng kiểu chuỗi, nên phải đổi sang kiểu liệu mong muốn, trường hợp liệu số Đến bước việc trở nên đơn giản nhiều, tính tổng s Và cuối xuất kết txtKQ Chương trình hướng dẫn cho hàm xử lý kiện sau: def onClick () : print ( " Nhan nut " ) a = int ( txtA get ( " 1.0 " ) ) b = int ( txtB get ( " 1.0 " ) ) kq = a + b txtKQ delete (1.0) txtKQ insert (1.0 , kq ) Chương trình 15.4: Hồn thiện chương trình với kiện nút nhấn Chương trình 15.4 ví dụ cho thao tác xử lý từ việc lấy liệu từ Text, xử lý xuất kết lại đối tượng Text Trước xuất liệu mới, cần phải xóa liệu cũ Con số "1.0" chương trình có ý nghĩ hàng 1, vị trí (vị trí 0) Đối với câu lệnh get, có nghĩa đọc liệu hàng 1, vị trí đến hết Đối với câu lệnh delete, có nghĩa xóa tồn hàng Câu lệnh insert tức thêm liệu hàng 1, từ vị trí Bây giờ, bạn chạy chương trình, mơ cho việc tính tổng số Chương trình chạy bạn nhấn vào biểu tượng đóng cửa sổ góc bên phải Bài tập Hãy viết chương trình tính nghiệm phương trình bậc nhất, với hệ số a b nhập vào từ giao diện Hãy viết chương trình giải phương trình bậc 2, với hệ số a, b c nhập từ giao diện Hướng dẫn lập trình Python Trang 133 Câu hỏi ôn tập Để tạo hàm xử lý kiện cho nút nhấn, cần phải làm gì? A Định nghĩa hàm, ví dụ def onClick() B Khai báo lệnh khởi tạo nút nhấn lệnh command = onClick C Thực bước D Tất sai Câu phát biểu hàm xử lý kiện cho nút nhấn: A Nó phải khai báo trước nút nhấn B Được khai báo vị trí chương trình C Khơng cầu phải khai báo, Python mặc định gọi D Tất sai Các bước để thực hàm xử lý xử kiện nút nhấn Python gì? A Lấy liệu từ giao diện vào B Xử lý liệu C Xuất liệu giao diện D Tất Ý nghĩa câu lệnh txtA.get("1.0") gì? A Đọc tồn liệu txtA B Xuất liệu txtA từ vị trí C Python khơng hỗ trợ lệnh D Tất sai Ý nghĩa câu lệnh txtA.insert("1.0") gì? A Đọc tồn liệu txtA B Xuất thêm liệu txtA từ vị trí C Python khơng hỗ trợ lệnh D Tất sai Ý nghĩa câu lệnh txtA.delete("1.0") gì? A Xóa tồn liệu txtA B Xóa liệu txtA từ hàng 1, vị trí hết C Cả phát biểu D Tất sai Đáp án A A Trang 134 D A B C The Dariu Foundation CHƯƠNG 16 Xử lý lỗi giao diện Giới thiệu Thông qua dự án thực ứng dụng có giao diện Windows ngơn ngữ Python, bạn thấy rằng, việc xử lý có dịng lệnh, tính tổng số Cịn lại, tất dòng lệnh chủ yếu dùng cho việc thiết kết giao diện, lấy liệu từ Text giao diện xuất kết lại giao diện Tuy nhiên, giống bao ứng dụng khác, việc xử lý lỗi cho phần liệu đầu vào luôn phải ý, để giúp cho ứng dụng trở nên thực tế tương tác dễ với người sử dụng Trong ứng dụng này, mặc định phải nhập vào số nguyên Tuy nhiên người dùng nhập vào chuỗi chương trình bị báo lỗi Bên cạnh việc dùng câu lệnh try except, hướng dẫn cách hiển thị hộp thơng báo lỗi (message box), minh họa hình bên dưới: Hình 16.1: Thơng báo báo lỗi từ chương trình Những thơng báo làm cho chương trình trở nên thân thiện người dùng nhiều, thay in dịng chữ giao diện Console Xử lý lỗi nhập liệu Về nguyên tắc, quy trình nhận liệu từ phía người dùng cần phải kiểm tra lỗi Ở đây, mong đợi người dùng nhập vào số, nên viết câu lệnh chuyển qua số ngun Một câu lệnh vơ mạnh mẽ hỗ trợ cho việc xử lý lỗi try except Bây giờ, phần except, hiển thị thêm thông báo lỗi Đầu tiên, cần phải thêm thư viện cho việc hiển thị thông báo lỗi, câu lệnh import đầu chương trình, sau: import tkinter as tk from tkinter import messagebox Chương trình 16.1: Khai báo hàm onClick Trang 136 The Dariu Foundation Chương trình cho hàm xử lý kiện nhấn nút sau: def onClick () : 10 11 12 13 14 print ( " Nhan nut " ) try : a = int ( txtA get ( " 1.0 " ) ) except : messagebox showerror ( " Loi Nhap Lieu " , " Xin vui long kiem tra lai so A " ) return try : b = int ( txtB get ( " 1.0 " ) ) except : messagebox showerror ( " Loi Nhap Lieu " , " Xin vui long kiem tra lai so B " ) return 15 16 c = a + b 17 18 19 txtKQ delete (1.0) txtKQ insert (1.0 , c ) Chương trình 16.2: Bắt lỗi thông báo nhập liệu từ người dùng Bạn lưu ý cách sử dụng câu lệnh return: Khi xảy lỗi nhập liệu, thông báo cho người dùng đồng thời phải dừng luồng xử lý bên Câu lệnh return dùng để thoát khỏi hàm xử lý kiện tại, đơn giản, liệu đầu vào chưa hợp lệ chưa xử lý Các thao tác khôi phục lại giao diện chương trình, chẳng hạn người dùng nhập sai liệu, thông báo đồng thời xóa liệu nhập sai, xem phần nâng cao cho người đọc tự hồn thiện Bạn sử dụng tiếng Việt câu thơng báo Trong giáo trình này, font chữ cho ngôn ngữ Python, dùng tiếng Việt có dấu Đến đây, bạn tự xây dựng ứng dụng lớn hơn, chẳng hạn phần mềm Calculator mà sử dụng máy tính, phần mềm hỗ trợ học Tốn cho học sinh cấp cấp Hướng dẫn lập trình Python Trang 137 Câu hỏi ơn tập Tại phải xử lý lỗi nhập liệu? A Chương trình chạy sai liệu không hợp lệ B Python không thực việc xử lý liệu đầu vào không hợp lệ C Chương trình bị liệu không hợp lệ D Tất Một công cụ hiệu để thông báo lỗi cho người dùng là: A Hiện chữ hình console B Hiện hộp thông báo ứng dụng C Không cầu phải làm gì, Python tự xử lý D Tất Các thêm thư viện để sử dụng hộp thơng báo (messageBox) gì? A from tkinter import messagebox B from messagebox import tkinter C import messagebox D Tất Phát biểu sau cho messageBox? A Message box hiển thị tiếng Việt B Đóng message box cách nhấn vào nút OK C Có thể thay đổi tiêu đề message box D Tất Ý nghĩa câu lệnh return gì? A Đóng ứng dụng B Thoát khỏi luồng xử lý hàm C Tất D Tất sai Đáp án D B Trang 138 A D D B The Dariu Foundation ... lệnh Python Hướng dẫn lập trình Python Trang CHƯƠNG Hướng dẫn cài đặt Python Pycharm Giới thiệu Python ngơn ngữ lập trình cấp cao dễ tiếp cận người bắt đầu học ngơn ngữ lập trình Nếu so sánh Python. .. phần mềm cộng đồng Python khuyên dùng Cài đặt Python Windows • Bước 1: Bạn cần truy cập vào trang chủ Python http://www .python. org/, chọn tiếp vào mục Downloads, lựa chọn phiên Python muốn cài Tại... 1.1, lập trình Python máy tính, cần chương trình dịch từ ngôn ngữ Python sang ngôn ngữ mà máy tính hiểu Và chương trình này, thơng dụng Python3 Tuy nhiên, muốn lập trình ngơn ngữ Python cho mạch

Ngày đăng: 06/11/2020, 21:40

TỪ KHÓA LIÊN QUAN

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w