Để kích hoạt, có một tập lệnh kích hoạt virtualenv từ một interpeter python đã chạy bằng cách sử dụng execfile('C:/path/to/virtualev/Scripts/activate_this.py', dict(__file__='C:/path/to/virtualev/Scripts/activate_this.py'))
. Tuy nhiên kể từ khi tôi vẫn có thể nhập khẩu các gói không có trong virtualenv từ kịch bản python hiện tại tôi nhầm lẫn về cách nó hoạt động.
Để hủy kích hoạt, không có kịch bản python nào cả.
Tôi nên làm gì?Làm thế nào để kích hoạt/hủy kích hoạt virtualenv khỏi mã python?
Trả lời
Từ part of the VirtualEnv homepage.
Bạn phải sử dụng trình thông dịch Python tùy chỉnh để cài đặt thư viện. Nhưng để sử dụng thư viện, bạn chỉ cần đảm bảo đường dẫn là chính xác. Một tập lệnh có sẵn để sửa đường dẫn. Bạn có thể thiết lập môi trường như:
activate_this = '/path/to/env/bin/activate_this.py'
execfile(activate_this, dict(__file__=activate_this))
Điều này giống như ý tưởng tồi. Bạn đang cố gắng sửa đổi môi trường tập lệnh của mình trong tập lệnh này. Xin giải thích tại sao?
Bạn không thể làm điều đó theo thứ bậc? Sử dụng một tập lệnh để chạy các tập lệnh khác nhau trong các virtualenv khác nhau.
Tôi đang phát triển một thử nghiệm Á hậu như độc tố (chỉ rất khác nhau trong cách tiếp cận của nó. Tôi không phát minh lại bánh xe) chạy bộ thử nghiệm trong các môi trường ảo khác nhau bằng cách sử dụng phụ thuộc khác nhau và python interpeters. Do đó, tôi phải có một cách lập trình để kích hoạt và hủy kích hoạt virtualenv. –
tại cửa sổ dòng lệnh, gõ từ 'vô hiệu hóa'
Từ mã Python. Không phải từ dòng lệnh. –
Nếu bạn muốn chạy một chương trình bên ngoài của virtualenv, chỉ cần chạy của bạn thực thi hệ thống python (ví dụ: /usr/bin/python
) thay vì một trong virtualenv.
- 1. Làm thế nào để kích hoạt mod_rewrite?
- 2. Làm thế nào để kích hoạt VsVim?
- 3. pip: Không thể tìm thấy virtualenv kích hoạt (bắt buộc)
- 4. Chia sẻ tập lệnh yêu cầu virtualenv được kích hoạt
- 5. virtualenv "venv/bin/kích hoạt" vs "nguồn venv/bin/kích hoạt"
- 6. Làm cách nào để kích hoạt Google Analytics từ mã?
- 7. Làm thế nào để kích hoạt backspace trên một textfield?
- 8. Làm thế nào để kích hoạt cửa sổ trong Java?
- 9. Làm thế nào để kích hoạt NSTimer ngay lập tức?
- 10. Làm thế nào để kích hoạt mbstring từ php.ini?
- 11. Virtualenv hoạt động như thế nào?
- 12. Jquery - Làm thế nào để kích hoạt $ ('# myForm') nộp (function()
- 13. Làm thế nào để kích hoạt IntelliSense trong VIM (gvim)
- 14. Làm thế nào để kích hoạt khung nền của Bootstrap?
- 15. Làm thế nào để kích hoạt xdebug với nginx?
- 16. Làm thế nào để kích hoạt Socket trong PHP?
- 17. Làm thế nào để xóa kích hoạt trong SQL Server?
- 18. Làm thế nào để kích hoạt jquery Resizable thay đổi kích thước lập trình?
- 19. Tôi có thể tự động thay đổi PYTHONPATH của mình khi kích hoạt/hủy kích hoạt virtualenv không?
- 20. Làm thế nào để kích hoạt tính năng trao đổi mã Hot Intellij
- 21. Làm thế nào để hiển thị hàm, thủ tục, kích hoạt mã nguồn trong postgresql?
- 22. Làm thế nào để kích hoạt chế độ tương tác python trong Cygwin?
- 23. Trình kích hoạt Gerrit kích hoạt trong Jenkins hoạt động như thế nào?
- 24. Làm cách nào để kích hoạt DATETIME_FORMAT của Django?
- 25. Đặt python virtualenv trong vim
- 26. Kích hoạt một virtualenv sử dụng một kịch bản shell dường như không làm việc
- 27. Phím kích hoạt Jquery. Sự kiện mã
- 28. Làm thế nào để bạn cài đặt hoặc kích hoạt PyUno trong LibreOffice?
- 29. Làm thế nào để hủy bỏ hoạt động INSERT trong kích hoạt MySql?
- 30. mã kích hoạt mới và cũ
Tôi không hiểu ý bạn là gì bằng cách hủy kích hoạt. nếu bạn không muốn virtualenv .. chỉ cần xóa toàn bộ thư mục đó. đó là tất cả – Surya
khi chúng tôi viết chương trình trong trình soạn thảo (nói nhật thực) .. có đường dẫn python theo mặc định không phải là virtualenv .. do đó, bạn có thể sử dụng các gói không có trong virtualenv. đó là nó – Surya
@Surya Khi hủy kích hoạt virtualenv, điều đó có nghĩa là bạn đang quay trở lại nội suy chính của python. –