Computer >> Máy Tính >  >> Lập trình >> Python

Làm cách nào để nhập mọi thứ từ không gian tên / gói python?

Một ý tưởng tồi nếu nhập mọi thứ từ một gói Python vì một gói không phải là một siêu mô-đun - đó là một tập hợp các mô-đun được nhóm lại với nhau. Vì vậy, bạn chỉ nên nhập những gì bạn cần vào tệp đó. Ngoài ra, việc nhập mọi thứ từ gói vào không gian tên chung của bạn sẽ gây ra sự gia tăng các tên và rất có thể xảy ra xung đột giữa các tên đó.

Điều đó đang được nói, vẫn còn nhiều cách để làm điều này. Đầu tiên là nhập thủ công mọi thứ từ một gói bằng cách sử dụng các câu lệnh nhập cho mọi mô-đun con. Một cách khác, như tài liệu tại https://docs.python.org/tutorial/modules.html#importing-from-a-package - gợi ý, là nếu bạn có danh sách chuỗi có tên __all__ trong tệp __init__.py của mình, tất cả các tên mô-đun / gói con trong danh sách đó được nhập khi một tên thực hiện từ nhập gói *. Vì vậy, bạn sẽ cần tạo một danh sách các chuỗi của mọi thứ trong gói của mình và sau đó thực hiện "from packageName import *" để nhập mọi thứ trong mô-đun này để khi bạn nhập tệp này ở nơi khác, tất cả những chuỗi đó cũng được nhập trong không gian tên này.