Cách sử dụng pipenv với VSCode
#python
1
#pip
1
#pipenv
1
#vscode
1
White

Khoa Tran viết ngày 09/04/2020

pipenv là gì?

Chắc hẳn bạn đã quen thuộc với pip, package installer của Python. Nếu so sánh pip với các package manager của ngôn ngữ khác như npm hay yarn (NodeJS), cargo (Rust),... thì thật đáng chán vì tool này chỉ hỗ trợ chủ yếu việc install packages còn tính năng lock versions thì rất sơ khai (thông qua pip freeze). Chính vì vậy pipenv được phát triển để kết hợp giữa pipvirtualenv (cũng của cùng PyPa) "vay mượn" các tính năng cao cấp hơn từ package manager khác.

Các lệnh cơ bản khi sử dụng pipenv như sau:

pipenv  --python  3.7   # Tạo ra virtual environment và 2 file Pipfile và Pipfile.lock khi bạn khởi tạo project mới
pipenv shell    # Để khởi chạy terminal trong virtual environment
pipenv install  # Cài đặt tất cả packages từ Pipfile và Pipfile.lock (tương tự như "npm install")

Để tìm hiểu sâu hơn về pipenv bạn tham khảo ở đây nhé https://pipenv.pypa.io/en/latest/

Cài đặt với VSCode

Khi đã cài đặt Python extension (official version của Microsoft) trong VSCode, mặc định VSCode có thể tự động nhận dạng các virtual environments được tạo trong máy của bạn. Tuy nhiên, ở thời điểm hiện tại extension này vẫn chưa hỗ trợ path được tạo bởi pipenv. Cách duy nhất là phải khai báo pythonPath tường minh trong .vscode/settings.json.

Để lấy được path của virtual environment được tạo ra bởi pipenv, trước hết bạn cần vào trong thư mục root của project (cùng cấp với Pipfile) và chạy lệnh pipenv --python. Ví dụ bên máy mình (MacOS) sẽ có path dạng như sau: /Users/khoatran/.local/share/virtualenvs/example-project-M27OqWV-/bin/python

Tiếp theo bạn cần chỉnh sửa pythonPath trong file settings.json. Bạn có thể dùng giao diện của VSCode để chọn Open Workspace Settings (JSON), hoặc tạo thư mục .vscode và file settings.json bằng tay. Nội dung của file settings.json nên là như sau:

{
    "python.pythonPath": "<VIRTUALENV_PYTHON_PATH_HERE>",
    "files.exclude": {
        "**/.git": true,
        "**/.svn": true,
        "**/.hg": true,
        "**/CVS": true,
        "**/.DS_Store": true,
        "**/*.pyc": true,
        "**/__pycache__": true
    }
}

Ngoài ra để VSCode chạy được pylint khi code, bạn có thể cài đặt thêm thư viện này dưới dạng dev dependencies như sau: pipenv install --dev pylint.

Như vậy là xong, những tính năng như autocomplete hay terminal với virtualenv trong VSCode đã được tích hợp ổn với pipenv. Hy vọng hướng dẫn nhỏ này có thể giúp ích được cho bạn :)

ktgeek 09-04-2020

Bình luận


White
{{ comment.user.name }}
Bỏ hay Hay
{{comment.like_count}}
Male avatar
{{ comment_error }}
Hủy
   

Hiển thị thử

Chỉnh sửa

White

Khoa Tran

1 bài viết.
0 người follow
Kipalog
{{userFollowed ? 'Following' : 'Follow'}}
{{like_count}}

kipalog

{{ comment_count }}

bình luận

{{liked ? "Đã kipalog" : "Kipalog"}}


White
{{userFollowed ? 'Following' : 'Follow'}}
1 bài viết.
0 người follow

 Đầu mục bài viết

Vẫn còn nữa! x

Kipalog vẫn còn rất nhiều bài viết hay và chủ đề thú vị chờ bạn khám phá!