Page 48 - Python Simple
P. 48

6. Mô-đun                                                        http://www.vithon.org/tutorial/2.5/node8.html



                   Truyền hai cờ -O vào trình thông dịch Python (-OO) sẽ khiến trình biên
                   dịch mã byte thực hiện những tối ưu mà trong những trường hợp hiếm hoi
                   có thể dẫn đến hỏng hóc trong chương trình. Hiện tại chỉ có các chuỗi
                   __doc__ được bỏ đi khỏi mã byte, làm cho tập tin .pyo gọn hơn. Vì một vài
                   chương trình phụ thuộc vào các chuỗi này, bạn nên chỉ dùng tùy chọn này
                   nếu bạn rõ bạn đang làm gì.


                   Một chương trình không chạy nhanh hơn khi nó được đọc từ một tập tin
                   .pyc hay .pyo so với khi nó được đọc từ tập tin .py ; một điểm nhanh hơn
                   duy nhất ở các tập tin .pyc hay .pyo là tốc độ chúng được nạp.


                   Khi một kịch bản được chạy bằng cách nhập tên nó ở dòng lệnh, thì mã
                   byte của kịch bản không bao giờ được ghi vào tập tin .pyc hay .pyo . Do
                   đó, thời gian khởi động của một kịch bản có thể được giảm xuống bằng
                   cách chuyển hầu hết mã của nó thành mô-đun và tạo một kịch bản nhỏ để
                   nhập mô-đun đó. Bạn cũng có thể chạy tập tin .pyc hay .pyo trực tiếp từ
                   dòng lệnh.

                   Có thể dùng tập tin spam.pyc (hay spam.pyo khi -O được dùng) và không
                   có tập tin spam.py của cùng một mô-đun. Việc này được tận dụng để phân
                   phối một thư viện Python dưới một dạng hơi khó để dịch ngược.

                   Mô-đun compileall có thể tạo các tập tin .pyc (hoặc các tập tin .pyo khi
                   -O được dùng) cho mọi mô-đun trong một thư mục.


             6.2 Các mô-đun chuẩn



             Python có một thư viện các mô-đun chuẩn, được nói tới trong một tài liệu khác,
             Tham khảo thư viện Python (từ nay gọi là ``Tài liệu tham khảo'''). Một vài
             mô-đun được chuyển thẳng vào trình thông dịch; chúng cung cấp các tác vụ
             không nằm trong phạm vi chính của ngôn ngữ nhưng cũng được tạo sẵn vì hiệu
             quả cao hoặc để truy cập vào những chức năng của hệ điều hành ví dụ như các
             lệnh gọi hệ thống. Tập hợp các mô-đun này là một tùy chọn cấu hình lệ thuộc
             vào hệ thống. Ví dụ, mô-đun amoeba chỉ có trên các hệ hỗ trợ Amoeba. Cần phải
             nhắc đến mô-đun: sys, được đưa vào trong mọi trình thông dịch Python. Các
             biến sys.ps1 và sys.ps2 định nghĩa những chuỗi được dùng như dấu nhắc
             chính và phụ:
                  >>> import sys
                  >>> sys.ps1
                  '>>> '
                  >>> sys.ps2
                  '... '
                  >>> sys.ps1 = 'C> '
                  C> print 'Yuck!'
                  Yuck!
                  C>


             Hai biến này chỉ được định nghĩa khi trình thông dịch chạy ở chế độ tương tác.



     4 of 10                                                                                  08/31/2011 10:26 AM
   43   44   45   46   47   48   49   50   51   52   53