Thêm gói vào đường dẫn Python

Tôi biết một hoặc nhiều trường hợp được báo cáo khi nhập python không thành công. Bởi vì các gói python được sắp xếp có tham chiếu đến cấu trúc hệ thống tệp, nên việc chạy một mô-đun nhập gói cao hơn một cấp trong hệ thống phân cấp tệp sẽ dẫn đến ImportError

Lỗi này có thể được giải quyết theo bất kỳ cách nào sau đây

  1. Xuất biến $PYTHONPATH trong thiết bị đầu cuối của bạn

    export PYTHONPATH=.

    Kiểm tra bài viết Enth think này về các lựa chọn thay thế khác

  2. Lập trình thêm đường dẫn cơ sở của mô-đun vào sys.path

    import sys
    
    sys.path.append['./../']

  3. Sử dụng công cụ tìm mục nhập Đường dẫn ✔️

    Trong khi lan man về việc thử chạy một mô-đun nhập tên từ một mô-đun khác, tôi bắt gặp một

    Chỉ cần đặt __path__ thành danh sách hoặc bộ đường dẫn nơi python có thể tra cứu các mô-đun

    Đối với gói ví dụ của tôi trong kho lưu trữ này, tôi đã đặt __path__ = ['./../'] trong mô-đun mà tôi dự định chạy

    python3 one/b.py
    two

Xem gói ví dụ về cách sử dụng công cụ tìm mục nhập Đường dẫn

Mô-đun python là một tệp bao gồm mã Python với một tập hợp các định nghĩa hàm, lớp và biến. Mô-đun làm cho mã có thể tái sử dụng và dễ hiểu. Chương trình cần sử dụng mô-đun nên nhập mô-đun cụ thể đó. Trong bài viết này, chúng ta sẽ thảo luận về cách nhập mô-đun Python với đường dẫn đầy đủ của nó

Có nhiều phương pháp khác nhau có thể được sử dụng để nhập mô-đun bằng cách sử dụng đường dẫn đầy đủ của mô-đun

  • sử dụng sys. đường dẫn. chức năng nối thêm []
  • Sử dụng gói importlib
  • Sử dụng lớp SourceFileLoader

Xem xét cách sắp xếp tệp sau đây và hãy xem cách sử dụng các phương pháp được liệt kê ở trên để nhập gfg. mô-đun py trong chính. py

python
     |--main.py
     |articles
        |--gfg.py  

Dưới đây là mã cho gfg. py

Python3




# class

class GFG:

  

  

sys.path.append["module_path"]
1

  

sys.path.append["module_path"]
3
sys.path.append["module_path"]
4

sys.path.append["module_path"]
5
sys.path.append["module_path"]
6_______4_______7
sys.path.append["module_path"]
8_______4_______9

sys.path.append["module_path"]
5

Inside Class method
Inside explicit method
1

sys.path.append["module_path"]
3
Inside Class method
Inside explicit method
3

  

sys.path.append["module_path"]
6
sys.path.append["module_path"]
7
Inside Class method
Inside explicit method
7
sys.path.append["module_path"]
9

sử dụng sys. đường dẫn. chức năng nối thêm []

Đây là cách dễ nhất để nhập mô-đun Python bằng cách thêm đường dẫn mô-đun vào biến đường dẫn. Biến đường dẫn chứa các thư mục Trình thông dịch Python tìm kiếm các mô-đun đã được nhập trong tệp nguồn

cú pháp

sys.path.append["module_path"]

Thí dụ

Python3




Inside Class method
Inside explicit method
9

Inside Class method
Inside explicit method
0
Inside Class method
Inside explicit method
1

 

Inside Class method
Inside explicit method
2

Inside Class method
Inside explicit method
3
Inside Class method
Inside explicit method
4
sys.path.append["module_path"]
9

 

Inside Class method
Inside explicit method
6

Inside Class method
Inside explicit method
0
Inside Class method
Inside explicit method
8

Inside Class method
Inside explicit method
9
Inside Class method
Inside explicit method
8
Inside Class method
Inside explicit method
0
module = SourceFileLoader["module_name","module_path"].load_module[]
2

 

module = SourceFileLoader["module_name","module_path"].load_module[]
3

module = SourceFileLoader["module_name","module_path"].load_module[]
4

module = SourceFileLoader["module_name","module_path"].load_module[]
5

đầu ra

Inside Class method
Inside explicit method

Sử dụng gói importlib

Gói importlib cung cấp việc triển khai câu lệnh nhập trong mã nguồn Python có thể di chuyển tới bất kỳ trình thông dịch Python nào. Điều này cho phép người dùng tạo các đối tượng tùy chỉnh giúp họ sử dụng quy trình nhập theo nhu cầu của họ. nhập khẩu. util là một trong những mô-đun có trong gói này có thể được sử dụng để nhập mô-đun từ đường dẫn đã cho

cú pháp

mô-đun = nhập khẩu. sử dụng. spec_from_file_location[“module_name”, “module_path”]

Thí dụ

Python3




Inside Class method
Inside explicit method
0
module = SourceFileLoader["module_name","module_path"].load_module[]
7

 

module = SourceFileLoader["module_name","module_path"].load_module[]
8

module = SourceFileLoader["module_name","module_path"].load_module[]
9

Inside Class method
Inside explicit method
0

Inside Class method
Inside explicit method
1
Inside Class method
Inside explicit method
2
Inside Class method
Inside explicit method
3
Inside Class method
Inside explicit method
4
Inside Class method
Inside explicit method
5
Inside Class method
Inside explicit method
6
sys.path.append["module_path"]
9

 

Inside Class method
Inside explicit method
8

Inside Class method
Inside explicit method
9_______13_______2 # class1

 

# class2

# class3

# class4

 

# class5

# class6

đầu ra

Inside Class method
Inside explicit method

Sử dụng lớp SourceFileLoader

Lớp SourceFileLoader là một lớp cơ sở trừu tượng được sử dụng để triển khai tải tệp nguồn với sự trợ giúp của hàm load_module[] thực sự nhập mô-đun

Làm cách nào để đặt đường dẫn gói Python?

Đường dẫn sẽ được thiết lập để thực thi các chương trình Python. .
Nhấp chuột phải vào My Computer và nhấp vào thuộc tính
Nhấp vào Cài đặt hệ thống nâng cao
Nhấp vào tab Biến môi trường
Nhấp vào tab mới của biến người dùng
Viết đường dẫn trong tên biến
Sao chép đường dẫn của thư mục Python
Dán đường dẫn của Python vào giá trị biến

Làm cách nào để nhập mô-đun có đường dẫn trong Python?

Hàm append[] . Đây là cách dễ nhất để nhập mô-đun Python bằng cách thêm đường dẫn mô-đun vào biến đường dẫn. Biến đường dẫn chứa các thư mục Trình thông dịch Python tìm kiếm các mô-đun đã được nhập trong tệp nguồn.

Chủ Đề