Điểm:0

ImportError: Không có mô-đun nào có tên 'pip._vendor.packaging'

lá cờ in

Tôi cần lấy một số phần mềm chạy trên Python 3.5

Tôi đang sử dụng Ubuntu 21.10.

tôi nhận được lỗi này:

(foobar_addressbook) guettli@p15:~/foobar/projects/foobar_addressbook$ tox -e py35-django18 


py35-django18 tạo: /home/guettli/foobar/projects/foobar_addressbook/.tox/py35-django18
LỖI: yêu cầu không thành công (mã thoát 1), logfile: /home/guettli/foobar/projects/foobar_addressbook/.tox/py35-django18/log/py35-django18-1.log
================================================================= ================== đăng nhập bắt đầu =============================== =================================================================
Traceback (cuộc gọi gần đây nhất cuối cùng):
  Tệp "/usr/local/lib/python3.5/runpy.py", dòng 193, trong _run_module_as_main
    "__chính__", mod_spec)
  Tệp "/usr/local/lib/python3.5/runpy.py", dòng 85, trong _run_code
    exec(mã, run_globals)
  Tệp "/home/guettli/foobar/projects/foobar_addressbook/.tox/py35-django18/lib/python3.5/site-packages/pip/__main__.py", dòng 23, trong <module>
    từ pip._internal.cli.main nhập chính dưới dạng _main # isort:skip # noqa
  Tệp "/home/guettli/foobar/projects/foobar_addressbook/.tox/py35-django18/lib/python3.5/site-packages/pip/_internal/cli/main.py", dòng 10, trong <module>
    từ pip._internal.cli.autocompletion nhập tự động hoàn thành
  Tệp "/home/guettli/foobar/projects/foobar_addressbook/.tox/py35-django18/lib/python3.5/site-packages/pip/_internal/cli/autocompletion.py", dòng 9, trong <module>
    từ pip._internal.cli.main_parser nhập create_main_parser
  Tệp "/home/guettli/foobar/projects/foobar_addressbook/.tox/py35-django18/lib/python3.5/site-packages/pip/_internal/cli/main_parser.py", dòng 7, trong <module>
    từ pip._internal.cli nhập cmdoptions
  Tệp "/home/guettli/foobar/projects/foobar_addressbook/.tox/py35-django18/lib/python3.5/site-packages/pip/_internal/cli/cmdoptions.py", dòng 23, trong <module>
    từ pip._vendor.packaging.utils nhập canonicalize_name
ImportError: Không có mô-đun nào có tên 'pip._vendor.packaging'

================================================================= =================== nhật ký kết thúc ============================= =================================================
_____________________________________________________________________ tóm lược ______________________________________________________________________
LỖI: py35-django18: InvocationError for command /home/guettli/foobar/projects/foobar_addressbook/.tox/py35-django18/bin/python -m pip freeze (thoát bằng mã 1)

Bất cứ ý tưởng làm thế nào tôi có thể sửa lỗi này?

câu hỏi liên quan: Lỗi phân đoạn trong khi cài đặt Python 3.5: ensurepip

Điểm:0
lá cờ in

Bước 1

pip trong virtualenv dường như bị hỏng, vì vậy bootstrap pip:

cuộn tròn https://bootstrap.pypa.io/pip/3.5/get-pip.py | .tox/py35-django18/bin/python - 

Bước 2

Bây giờ tôi nhận được lỗi này

    LỖI: Lệnh bị lỗi với trạng thái thoát 1:
     lệnh: /home/guettli/foobar/projects/foobar_addressbook/.tox/py35-django18/bin/python -c 'nhập sys, setuptools, tokenize; sys.argv[0] = '"'"'/tmp/pip-install-xsbc7r69/django-celery_63fa83d5391f499a9cc375c1c1fed8b6/setup.py'"'"'; __file__='"'"'/tmp/pip-install-xsbc7r69/django-celery_63fa83d5391f499a9cc375c1c1fed8b6/setup.py'"'"';f=getattr(tokenize, '"'"'open'"'"', open)( __file__);code=f.read().replace('"'"'\r\n'"'"', '"'"'\n'"'"');f.close();exec( biên dịch (mã, __file__, '"'"'exec'"'"'))' egg_info --egg-base /tmp/pip-pip-egg-info-6esk_zf9
         cwd: /tmp/pip-install-xsbc7r69/django-celery_63fa83d5391f499a9cc375c1c1fed8b6/
    Đầu ra hoàn chỉnh (7 dòng):
    Traceback (cuộc gọi gần đây nhất cuối cùng):
      Tệp "<string>", dòng 1, trong <module>
      Tệp "/home/guettli/foobar/projects/foobar_addressbook/.tox/py35-django18/lib/python3.5/site-packages/setuptools/__init__.py", dòng 18, trong <module>
        nhập setuptools.version
      Tệp "/home/guettli/foobar/projects/foobar_addressbook/.tox/py35-django18/lib/python3.5/site-packages/setuptools/version.py", dòng 1, trong <module>
        nhập pkg_resource
    ImportError: Không có mô-đun nào có tên 'pkg_resource'

Để khắc phục điều này:

.tox/py35-django18/bin/python -m cài đặt pip -U setuptools

Bây giờ virtualenv của tox đang hoạt động.

Nếu bạn biết một cách dễ dàng hơn để Python3.5 hoạt động trên Ubuntu 21.10, vui lòng để lại nhận xét. Cảm ơn bạn.

lá cờ ru
Cách để Python cổ đại hoạt động trên Ubuntu 21.10 là sử dụng PyENV để thiết lập nó hoặc đảm bảo rằng bạn cài đặt PIP với trình biên dịch python của mình (không phải mặc định!) - điều này cũng làm cho các công cụ thiết lập và những thứ khác có sẵn trong môi trường của bạn theo mặc định.
guettli avatar
lá cờ in
@ThomasWard Tôi đã thử pyenv trước nhưng không thành công với lỗi seg. Xem https://askubuntu.com/questions/1376525/segmentation-fault-while-installing-python-3-5-ensurepip
lá cờ ru
Tôi có thể hỏi tại sao bạn * cần * Python 3.5 đã nhiều năm tuổi không? Vì một số lý do, việc cập nhật ứng dụng của bạn cho python mới hơn không thể thực hiện được?
guettli avatar
lá cờ in
@ThomasWard Python3.5 là một bước trung gian để chuyển từ 2,7 lên 3,8.(Ứng dụng django này hiện đang sử dụng Django 1.4).
lá cờ ru
Là một người phải chuyển từ Django cũ sang Django mới nhất, bước 'trung gian' của bạn có thể khiến bạn đau buồn hơn là viết lại hoàn toàn. Bởi vì sau đó bạn phải viết lại một lần nữa để có được một Django mới hơn tương thích với py3.8.
guettli avatar
lá cờ in
@ThomasWard Tôi không muốn sử dụng PyENV. Nó làm những điều kỳ diệu mà tôi không muốn được thực hiện. Ví dụ, nó thay đổi PATH và nó cần được kích hoạt thông qua .profile. Tất cả những gì tôi muốn là `/usr/local/bin/python3.5`. Tôi không cần một công cụ để chuyển đổi giữa các phiên bản Python.

Đăng câu trả lời

Hầu hết mọi người không hiểu rằng việc đặt nhiều câu hỏi sẽ mở ra cơ hội học hỏi và cải thiện mối quan hệ giữa các cá nhân. Ví dụ, trong các nghiên cứu của Alison, mặc dù mọi người có thể nhớ chính xác có bao nhiêu câu hỏi đã được đặt ra trong các cuộc trò chuyện của họ, nhưng họ không trực giác nhận ra mối liên hệ giữa câu hỏi và sự yêu thích. Qua bốn nghiên cứu, trong đó những người tham gia tự tham gia vào các cuộc trò chuyện hoặc đọc bản ghi lại các cuộc trò chuyện của người khác, mọi người có xu hướng không nhận ra rằng việc đặt câu hỏi sẽ ảnh hưởng—hoặc đã ảnh hưởng—mức độ thân thiện giữa những người đối thoại.