Tìm mô-đun python

Tôi đang cố gắng sử dụng pytools mô-đun -đun trong VirtualENV do Nervana tạo ra cho gói học tập neon chuyên sâu của họ, nhưng dường như không thể tìm thấy pytools hoặc pip it. Khi tôi vào ảo của mình, tôi thấy hành vi này

Nội dung chính Hiển thị

  • Làm cách nào để sửa mô-đun Python không tìm thấy?
  • Làm cách nào để sửa môi trường ảo trong Python?
  • Làm cách nào để kích hoạt Venv trong Python?
  • Làm cách nào để kích hoạt PIP trong môi trường ảo?

[email protected]:~/Downloads/neon$ source .venv/bin/activate
[.venv] [email protected]:~/Downloads/neon$ python
Python 2.7.6 [default, Jun 22 2015, 17:58:13] 
[GCC 4.8.2] on linux2
Type "help", "copyright", "credits" or "license" for more information.

>>> import pytools
Traceback [most recent call last]:
  File "", line 1, in 
  ImportError: No module named pytools
>>> 

>>> import sys
>>> sys.path
['', '/usr/local/lib/python2.7/dist-packages', '/home/me/Downloads/neon',
 '/home/me/Downloads/neon/.venv/lib/python2.7',
 '/home/me/Downloads/neon/.venv/lib/python2.7/plat-x86_64-linux-gnu',
 '/home/me/Downloads/neon/.venv/lib/python2.7/lib-tk',
 '/home/me/Downloads/neon/.venv/lib/python2.7/lib-old', 
 '/home/me/Downloads/neon/.venv/lib/python2.7/lib-dynload',
 '/usr/lib/python2.7', 
 '/usr/lib/python2.7/plat-x86_64-linux-gnu', 
 '/usr/lib/python2.7/lib-tk', 
 '/home/me/Downloads/neon/.venv/local/lib/python2.7/site-packages', 
 '/home/me/Downloads/neon/.venv/lib/python2.7/site-packages']



[.venv] [email protected]:~/Downloads/neon$ pip install pytools 
Requirement already satisfied [use --upgrade to upgrade]: pytools in     
 /usr/local/lib/python2.7/dist-packages/pytools-2016.1-py2.7.egg
Requirement already satisfied [use --upgrade to upgrade]: 
 decorator>=3.2.0 in /usr/local/lib/python2.7/dist-packages [from pytools]
Requirement already satisfied [use --upgrade to upgrade]: appdirs>=1.4.0 
  in /usr/local/lib/python2.7/dist-packages/appdirs-1.4.0-py2.7.egg [from 
  pytools]
Requirement already satisfied [use --upgrade to upgrade]: six>=1.8.0 in 
 /usr/local/lib/python2.7/dist-packages [from pytools]
Requirement already satisfied [use --upgrade to upgrade]: numpy>=1.6.0 in 
 /usr/local/lib/python2.7/dist-packages [from pytools]

Vì vậy, tôi không thể nhập

  # where our installed python packages will live
  VIRTUALENV_DIR := .venv
  VIRTUALENV_EXE := virtualenv -p python2.7  # use pyvenv for python3 install
  ACTIVATE := $[VIRTUALENV_DIR]/bin/activate
7 vì không có trên hệ thống của tôi. Theo
  # where our installed python packages will live
  VIRTUALENV_DIR := .venv
  VIRTUALENV_EXE := virtualenv -p python2.7  # use pyvenv for python3 install
  ACTIVATE := $[VIRTUALENV_DIR]/bin/activate
0, nó được cài đặt trong thư mục
  # where our installed python packages will live
  VIRTUALENV_DIR := .venv
  VIRTUALENV_EXE := virtualenv -p python2.7  # use pyvenv for python3 install
  ACTIVATE := $[VIRTUALENV_DIR]/bin/activate
1, để trả lại cho tôi 3 câu hỏi

First. Tại sao ảo của tôi có thể thấy các gói toàn hệ thống của tôi? . Khi tôi nhìn vào Makefile được sử dụng để tạo VirtualEnv, tôi thấy điều này. Tại sao virtualenv của tôi có thể thấy các gói trên toàn hệ thống của tôi? . Khi tôi nhìn vào Makefile được sử dụng để tạo virtualenv, tôi thấy điều này

  # where our installed python packages will live
  VIRTUALENV_DIR := .venv
  VIRTUALENV_EXE := virtualenv -p python2.7  # use pyvenv for python3 install
  ACTIVATE := $[VIRTUALENV_DIR]/bin/activate

which will for me hành vi mặc định

thứ hai. Tại sao có các thư mục

  # where our installed python packages will live
  VIRTUALENV_DIR := .venv
  VIRTUALENV_EXE := virtualenv -p python2.7  # use pyvenv for python3 install
  ACTIVATE := $[VIRTUALENV_DIR]/bin/activate
2 trong các gói hàng hóa của tôi? . Tại sao có 12 thư mục trong thư mục dist-gói của tôi? . đường dẫn cho python môi trường hệ thống của tôi đã được cập nhật để tìm kiếm trong thư mục trứng. Khi nào như thế nào???]

Thứ ba. Cách hiệu quả để sửa chữa mọi thứ đối với VirtualEnv của tôi sẽ có quyền truy cập vào pytools là gì?. Cách sửa lỗi hiệu quả để virtualenv của tôi có quyền truy cập vào pytools là gì?

[Tôi đã đánh số danh sách của mình thay vì thứ nhất/thứ hai/thứ ba, nhưng sau đó mã Makefile tôi đã chèn không định dạng

Nó không phải là xa lạ khi Pythonistas mới gặp khó khăn trong việc cài đặt các gói và sử dụng các mô-đun của chúng. Lỗi ghép gói như thế này thường phát sinh, ngay cả khi bạn nghĩ rằng bạn đã cài đặt đúng cách. các gói và sử dụng các mô-đun của chúng. Các lỗi khó chịu như thế này thường phát sinh, ngay cả khi bạn nghĩ rằng mình đã cài đặt gói đúng cách

>>>

ImportError: No module named 

Điều này được gây ra bởi thực tế là phiên bản Python mà bạn đang chạy tập lệnh của bạn không được cấu hình để tìm kiếm các mô-đun nơi bạn đã cài đặt chúng. Điều này xảy ra khi bạn sử dụng cài đặt sai

  # where our installed python packages will live
  VIRTUALENV_DIR := .venv
  VIRTUALENV_EXE := virtualenv -p python2.7  # use pyvenv for python3 install
  ACTIVATE := $[VIRTUALENV_DIR]/bin/activate
0 để cài đặt các gói

Nói chung, mỗi cài đặt Python đi kèm với

  # where our installed python packages will live
  VIRTUALENV_DIR := .venv
  VIRTUALENV_EXE := virtualenv -p python2.7  # use pyvenv for python3 install
  ACTIVATE := $[VIRTUALENV_DIR]/bin/activate
0 có thể thực thi riêng, được sử dụng để cài đặt các gói. Theo mặc định,
  # where our installed python packages will live
  VIRTUALENV_DIR := .venv
  VIRTUALENV_EXE := virtualenv -p python2.7  # use pyvenv for python3 install
  ACTIVATE := $[VIRTUALENV_DIR]/bin/activate
0 thực thi sẽ cài đặt các gói ở vị trí cài đặt Python mà cụ thể có thể tìm thấy chúng

Vấn đề rất phổ biến khi cài đặt nhiều phiên dịch viên python [và bằng cách mở rộng, nhiều ____4 thực thi. ] Tùy thuộc vào đường dẫn của shell của bạn, chạy

  # where our installed python packages will live
  VIRTUALENV_DIR := .venv
  VIRTUALENV_EXE := virtualenv -p python2.7  # use pyvenv for python3 install
  ACTIVATE := $[VIRTUALENV_DIR]/bin/activate
0 có thể gọi là
  # where our installed python packages will live
  VIRTUALENV_DIR := .venv
  VIRTUALENV_EXE := virtualenv -p python2.7  # use pyvenv for python3 install
  ACTIVATE := $[VIRTUALENV_DIR]/bin/activate
0 có thể thực thi được liên kết với phiên bản Python mà bạn đang sử dụng hoặc cái khác. Nếu
  # where our installed python packages will live
  VIRTUALENV_DIR := .venv
  VIRTUALENV_EXE := virtualenv -p python2.7  # use pyvenv for python3 install
  ACTIVATE := $[VIRTUALENV_DIR]/bin/activate
0 được gọi sai, thì các gói mà nó cài đặt có thể sẽ không hiển thị cho trình thông dịch Python mà bạn sử dụng, gây ra

  # where our installed python packages will live
  VIRTUALENV_DIR := .venv
  VIRTUALENV_EXE := virtualenv -p python2.7  # use pyvenv for python3 install
  ACTIVATE := $[VIRTUALENV_DIR]/bin/activate
4

Để sử dụng phiên bản

  # where our installed python packages will live
  VIRTUALENV_DIR := .venv
  VIRTUALENV_EXE := virtualenv -p python2.7  # use pyvenv for python3 install
  ACTIVATE := $[VIRTUALENV_DIR]/bin/activate
0, cụ thể là phiên bản Python mong muốn của bạn, bạn có thể sử dụng

  # where our installed python packages will live
  VIRTUALENV_DIR := .venv
  VIRTUALENV_EXE := virtualenv -p python2.7  # use pyvenv for python3 install
  ACTIVATE := $[VIRTUALENV_DIR]/bin/activate
6. Ở đây,
  # where our installed python packages will live
  VIRTUALENV_DIR := .venv
  VIRTUALENV_EXE := virtualenv -p python2.7  # use pyvenv for python3 install
  ACTIVATE := $[VIRTUALENV_DIR]/bin/activate
7 là đường dẫn đến trình thông dịch Python mong muốn, vì vậy một cái gì đó __
  # where our installed python packages will live
  VIRTUALENV_DIR := .venv
  VIRTUALENV_EXE := virtualenv -p python2.7  # use pyvenv for python3 install
  ACTIVATE := $[VIRTUALENV_DIR]/bin/activate
8 sẽ sử dụng
  # where our installed python packages will live
  VIRTUALENV_DIR := .venv
  VIRTUALENV_EXE := virtualenv -p python2.7  # use pyvenv for python3 install
  ACTIVATE := $[VIRTUALENV_DIR]/bin/activate
0 thực thi cho
ImportError: No module named 
0. Tuy nhiên, điều này vẫn có những hạn chế của nó

Ngoài ra còn có những cách khác để đi xung quanh vấn đề này. Bạn có thể sửa đổi đường dẫn Shell Shell của mình để nó sử dụng chính xác

  # where our installed python packages will live
  VIRTUALENV_DIR := .venv
  VIRTUALENV_EXE := virtualenv -p python2.7  # use pyvenv for python3 install
  ACTIVATE := $[VIRTUALENV_DIR]/bin/activate
0 có thể thực thi hoặc thay đổi

ImportError: No module named 
2 to version Python mong muốn của bạn có thể tìm thấy các gói nằm trong một thư mục khác. Nhưng tất cả những điều này có thể trở nên lộn xộn nhanh chóng

Thay vào đó, môi trường ảo thường được sử dụng để thiết lập cài đặt Python với nhau. Một môi trường ảo bao gồm, trong số những thứ khác, một trình thông dịch Python, thực thi

  # where our installed python packages will live
  VIRTUALENV_DIR := .venv
  VIRTUALENV_EXE := virtualenv -p python2.7  # use pyvenv for python3 install
  ACTIVATE := $[VIRTUALENV_DIR]/bin/activate
0 và thư mục gói trang web, là vị trí tiêu chuẩn cho hầu hết các gói được tải xuống với
  # where our installed python packages will live
  VIRTUALENV_DIR := .venv
  VIRTUALENV_EXE := virtualenv -p python2.7  # use pyvenv for python3 install
  ACTIVATE := $[VIRTUALENV_DIR]/bin/activate
0. môi trường ảo thường được sử dụng để cách ly các bản cài đặt Python với nhau. Một môi trường ảo chứa, trong số những thứ khác, trình thông dịch Python, tệp thực thi
  # where our installed python packages will live
  VIRTUALENV_DIR := .venv
  VIRTUALENV_EXE := virtualenv -p python2.7  # use pyvenv for python3 install
  ACTIVATE := $[VIRTUALENV_DIR]/bin/activate
0 và thư mục gói trang web, là vị trí tiêu chuẩn cho hầu hết các gói được tải xuống bằng
  # where our installed python packages will live
  VIRTUALENV_DIR := .venv
  VIRTUALENV_EXE := virtualenv -p python2.7  # use pyvenv for python3 install
  ACTIVATE := $[VIRTUALENV_DIR]/bin/activate
0

Bằng cách kích hoạt môi trường ảo trong vỏ của bạn, bạn chỉ đưa nó đến tệp thực thi

  # where our installed python packages will live
  VIRTUALENV_DIR := .venv
  VIRTUALENV_EXE := virtualenv -p python2.7  # use pyvenv for python3 install
  ACTIVATE := $[VIRTUALENV_DIR]/bin/activate
0 và Python được cài đặt trong môi trường ảo của bạn, đảm bảo rằng các phiên bản phù hợp của cả hai ứng dụng được gọi và . Môi trường ảo cũng cho phép bạn chạy các phiên bản khác nhau của cùng một gói với các dự án khác nhau, điều đó có nghĩa là bạn không thể nếu đang sử dụng cài đặt Python toàn cầu

Có nhiều môi trường ảo khác nhau để lựa chọn. Khóa học này sử dụng Conda, đi kèm với Anaconda. Bạn có thể tìm hiểu thêm về môi trường ảo khi làm việc với môi trường ảo Python. Conda, đi kèm với Anaconda. Bạn có thể tìm hiểu thêm về môi trường ảo trong Làm việc với môi trường ảo Python

Chủ Đề