Thực hành tốt nhất để đặt hàng chức năng python
Bây giờ bạn đã biết sự khác biệt giữa cách Python xử lý các chế độ thực thi khác nhau, sẽ rất hữu ích nếu bạn biết những phương pháp hay nhất nào bạn có thể triển khai. Bạn sẽ tìm hiểu về bốn phương pháp hay nhất mà bạn có thể sử dụng để đảm bảo rằng mã của bạn có thể phục vụ mục đích kép Show
00. 00 Bây giờ bạn có thể thấy sự khác biệt trong cách Python xử lý các chế độ thực thi khác nhau, sẽ rất hữu ích nếu bạn biết một số phương pháp hay nhất để sử dụng. Những điều này sẽ áp dụng bất cứ khi nào bạn muốn viết mã mà bạn có thể chạy dưới dạng tập lệnh và nhập vào mô-đun khác hoặc phiên tương tác 00. 15 Bạn sẽ tìm hiểu về bốn phương pháp hay nhất để đảm bảo rằng mã của bạn có thể phục vụ mục đích kép. Đây là, một, đưa hầu hết mã vào một chức năng hoặc lớp; 00. 39 Hãy chia nhỏ chúng ra, bắt đầu với việc đưa hầu hết mã vào một hàm hoặc lớp. Hãy nhớ rằng trình thông dịch Python thực thi tất cả mã trong mô-đun khi nó nhập mô-đun 00. 49 Đôi khi mã bạn viết sẽ có tác dụng phụ mà bạn muốn người dùng kiểm soát, chẳng hạn như chạy một phép tính mất nhiều thời gian hoặc ghi vào tệp trên đĩa hoặc in thông tin làm lộn xộn thiết bị đầu cuối của người dùng 01. 02 Trong những trường hợp này, bạn muốn người dùng kiểm soát việc kích hoạt việc thực thi mã này, thay vì để trình thông dịch Python thực thi mã khi nó nhập mô-đun 01. 12 Do đó, cách thực hành tốt nhất ở đây là bao gồm hầu hết mã bên trong một hàm hoặc một lớp. Điều này là do khi trình thông dịch Python gặp các từ khóa 01. 29 Hãy xem qua một ví dụ. Ở đây, chúng tôi có một tệp mà chúng tôi gọi là 01. 52 Tiếp theo, bạn sử dụng 02. 05 Sau đó, nó sửa đổi dữ liệu đầu vào. Tiếp theo, nó tạm dừng thực thi trong 15 giây bằng cách sử dụng chức năng 02. 19 Bây giờ, hãy xem điều gì sẽ xảy ra khi bạn thực thi tệp này dưới dạng tập lệnh trên dòng lệnh. Trình thông dịch Python sẽ thực thi các dòng 02. 35 Sau đó, tập lệnh sẽ thoát mà không cần làm gì thêm, vì tập lệnh không có bất kỳ mã nào thực thi 02. 45 Đầu ra mà chúng ta có thể thấy ở đây là kết quả của câu lệnh in đầu tiên. Lưu ý rằng việc nhập từ 02. 55 Cụ thể, đầu ra của các cuộc gọi đến 03. 24 Chúng ta sẽ bắt đầu trình thông dịch tương tác và sau đó chúng ta sẽ gõ 03. 44 Vậy, nếu bạn muốn 04. 03 Bạn có thể sửa đổi tệp của mình hoặc giống như tôi đã làm ở đây, tôi đã tạo một tệp mới có tên là 04. 17 Điều kiện này sẽ ước lượng thành _________ 27 khi ________ 1 bằng chuỗi ________ 24 04. 23 Hãy nhớ rằng giá trị đặc biệt của 04. 53 Bây giờ, hãy chạy tập lệnh mới của chúng ta từ dòng lệnh để xem đầu ra sẽ thay đổi như thế nào 05. 02 Đầu tiên, đầu ra hiển thị kết quả của cuộc gọi 05. 10 Điều này xảy ra vì biến 05. 27 Khi 05. 41 Lưu ý rằng bạn có hành vi tương tự như trước khi bạn thêm câu lệnh điều kiện vào cuối tệp. Điều này là do biến 06. 00 Bây giờ bạn có thể viết mã Python có thể chạy từ dòng lệnh dưới dạng tập lệnh và được nhập mà không có tác dụng phụ không mong muốn. Tiếp theo, bạn sẽ tìm hiểu về cách viết mã của mình để giúp các lập trình viên Python khác dễ dàng làm theo ý của bạn. Nhiều ngôn ngữ, chẳng hạn như C và Java và một số ngôn ngữ khác, định nghĩa một chức năng đặc biệt phải được gọi là 06. 23 Hàm này thường được gọi là điểm vào vì nó là nơi thực thi vào chương trình. Ngược lại, Python không có chức năng đặc biệt đóng vai trò là điểm vào của tập lệnh. Bạn thực sự có thể cung cấp cho điểm vào trong tập lệnh Python bất kỳ tên nào bạn muốn 06. 36 Mặc dù Python không gán bất kỳ ý nghĩa nào cho một hàm có tên là 06. 45 Bằng cách đó, bất kỳ lập trình viên nào khác khi đọc tập lệnh của bạn đều biết ngay rằng chức năng này là điểm bắt đầu của mã hoàn thành nhiệm vụ chính của tập lệnh. Ngoài ra, 07. 00 Điều này tốt hơn là đặt mã trực tiếp vào khối điều kiện vì người dùng có thể sử dụng lại 07. 23 Nếu bạn chạy mã này dưới dạng tập lệnh hoặc nhập mã, bạn sẽ nhận được kết quả giống như trước đây. Một thực tế phổ biến khác trong Python là để hàm 07. 36 Điều này đặc biệt hữu ích khi bạn soạn nhiệm vụ tổng thể của mình từ một số nhiệm vụ phụ nhỏ hơn có thể thực hiện độc lập. Ví dụ: bạn có thể có một tập lệnh thực hiện như sau. đọc tệp từ một nguồn có thể là cơ sở dữ liệu, tệp trên đĩa hoặc API web; 07. 57 Nếu bạn triển khai từng nhiệm vụ phụ này trong các chức năng riêng biệt thì bạn hoặc người dùng sẽ dễ dàng sử dụng lại một số bước và bỏ qua những bước bạn không muốn. Sau đó, bạn có thể tạo quy trình công việc mặc định trong 08. 11 Việc có áp dụng cách làm này vào quy tắc của bạn hay không là quyết định từ phía bạn. Việc chia nhỏ công việc thành nhiều chức năng giúp việc sử dụng lại dễ dàng hơn nhưng lại làm tăng khó khăn cho người khác đang cố diễn giải mã của bạn vì họ phải thực hiện theo một số bước nhảy trong luồng chương trình 08. 26 Vì vậy, hãy xem phiên bản cuối cùng của kịch bản của chúng ta có tên là 08. 37 Định nghĩa hàm thứ hai ở dòng 11 tạo và trả về một số dữ liệu mẫu, định nghĩa hàm thứ ba ở dòng 16 mô phỏng việc ghi dữ liệu đã sửa đổi vào cơ sở dữ liệu. Trên dòng 20, 09. 04 09. 13 Hai dòng cuối cùng của tập lệnh là khối điều kiện kiểm tra 09. 34 Tuy nhiên, bạn cũng có thể nhập tệp này và sử dụng lại 09. 46 Quá trình nhập khiến trình thông dịch Python thực thi tất cả các dòng mã trong tệp. Giờ đây, 10. 06 Sau đó sử dụng lại các hàm 10. 39 Hai, sử dụng các giá trị khác nhau của Gregory Klassen vào ngày 10 tháng 3 năm 2020 Có phải tmux hoặc một số thiết lập đầu cuối khác mà bạn sử dụng trong bản trình bày của mình không? Dan Bader Nhóm RP vào ngày 10 tháng 3 năm 2020 @Gregory. Tôi tin rằng đây là thiết bị đầu cuối tích hợp sẵn của trình soạn thảo VS Code. Chúng tôi có một khóa học chuyên dụng về nó ở đây. ) mattc vào ngày 11 tháng 3 năm 2020 Điều gì xảy ra nếu bạn nhập nhiều mô-đun với hàm main()? SkyFox vào ngày 11 tháng 3 năm 2020 Rất thường ở đầu tệp, người ta xác định các biến cấp độ mô-đun. Điều đó có nghĩa là chúng có sẵn từ phạm vi của tập lệnh nhập không? pallavlearn vào ngày 18 tháng 3 năm 2020 Bạn có ghi lại âm thanh và video riêng biệt hay là một lần? Zarata vào tháng 11. 12, 2020 Cá nhân tôi đã tìm thấy một điểm nhầm lẫn (picayune(??)) ở đây. Có ít nhất hai tuyên bố được đưa ra mà tôi tin rằng có lẽ đúng về mặt kỹ thuật, nhưng về phía tôi mà không nhận ra thêm thì dường như mâu thuẫn với những điểm khác đã được đưa ra. “Mặc dù Python không gán bất kỳ ý nghĩa nào cho một hàm có tên là ‘main’…” và “Chúng tôi thực sự có thể đặt cho điểm vào trong tập lệnh Python bất kỳ tên nào chúng tôi muốn…” Vấn đề của tôi là thông số ngôn ngữ đó. được trích dẫn trong phần trước của mô-đun này trên bề mặt đã ngụ ý điều gì đó “đặc biệt” về các chữ cái “chính”. “__name__ của mô-đun được đặt bằng '__main__' khi được đọc từ đầu vào tiêu chuẩn, tập lệnh hoặc từ lời nhắc tương tác. tài liệu. con trăn. org/3/library/__main__. html“ Dài ngắn. điều còn thiếu đối với tôi là cuối cùng tôi cũng nhận ra rằng “__main__” là một GIÁ TRỊ CHUỖI đặc biệt, KHÔNG PHẢI là một ký hiệu biến đặc biệt khác (như __name__). Thông số kỹ thuật đang nói một giá trị Chuỗi đặc biệt “__main__” đôi khi được gán bởi ngôn ngữ cho __name__. Không có một số cơ chế (không giải thích được) thay đổi giá trị của một biến __main__ thành tên của một chức năng điểm vào Do đó, người ta có thể viết một “điều kiện bảo vệ” (được gọi như vậy trong một tài liệu tham khảo khác) cho một điểm vào được đặt tên tùy ý là “foo” như
Tôi cho rằng tôi sẽ bỏ qua phần đáng xấu hổ này, đề phòng trường hợp bất kỳ ai khác có xu hướng vấp phải dây giày của chính họ cũng có câu hỏi tương tự “huh ??” Thứ tự các hàm trong Python có quan trọng không?Vì vậy, nói chung, có, thứ tự không quan trọng ; . gJavaScript). Lưu câu trả lời này.
Các chức năng nên được đặt ở đâu trong Python?Sắp xếp chức năng của bạn
. Nếu quy mô dự án của bạn lớn hơn một chút, bạn có thể muốn đặt chúng vào mô-đun của riêng chúng để chúng có thể được nhập vào mã của bạn và sử dụng ở mọi nơi. at the beginning of your Python module. If your project size is a bit bigger you may want to put them into their own module so that they can be imported into your code and used wherever.
Thứ tự thực hiện trong Python là gì?Việc thực thi luôn bắt đầu từ câu lệnh đầu tiên của chương trình. Các câu lệnh được thực thi lần lượt theo thứ tự từ trên xuống dưới . Các định nghĩa hàm không làm thay đổi luồng thực thi của chương trình, nhưng hãy nhớ rằng các câu lệnh bên trong hàm không được thực thi cho đến khi hàm được gọi.
PEP 8 là gì và tại sao nó quan trọng?PEP 8, đôi khi được đánh vần là PEP8 hoặc PEP-8, là tài liệu cung cấp các nguyên tắc và phương pháp hay nhất về cách viết mã Python . Nó được viết vào năm 2001 bởi Guido van Rossum, Barry Warsaw, và Nick Coghlan. Trọng tâm chính của PEP 8 là cải thiện khả năng đọc và tính nhất quán của mã Python. |