面试题答案
一键面试- 项目初始化:
- 创建项目目录,例如
my_project
:
mkdir my_project cd my_project
- 初始化
pipenv
(也可以使用venv
+requirements.txt
,这里以pipenv
为例):
pip install pipenv pipenv install
- 创建项目目录,例如
- 环境配置:
- 激活
pipenv
环境:
pipenv shell
- 安装依赖时指定版本。对于
A
包,由于其依赖B
和C
,且B
依赖D
有特定版本要求,假设B
要求D
的版本为1.0.0
,先安装B
和D
:
pip install B==<required_version_of_B> D==1.0.0
- 再安装
C
包:
pip install C
- 然后安装
A
包,因为A
依赖前面已安装的B
和C
,pip
会自动处理:
pip install A
- 对于项目依赖的
E
包,先尝试安装,若出现与D
包的版本冲突:
pip install E
- 如果冲突,一种解决办法是使用
pip - install - overrides
工具(需要先安装pip - install - overrides
):
pip install pip - install - overrides pip - install - overrides install E
- 另一种办法是使用
pipenv
的pipfile
手动调整依赖版本。打开Pipfile
文件,手动调整E
和D
的依赖关系,例如指定E
能兼容的D
的版本,然后运行:
pipenv install
- 激活
- 依赖管理:
- 生成
requirements.txt
文件(如果需要),在pipenv
环境中:
pipenv lock -r > requirements.txt
- 若使用
venv
,直接在venv
环境下使用pip freeze > requirements.txt
。 - 如果依赖发生变化,更新
Pipfile
(对于pipenv
)或requirements.txt
(对于venv
),然后重新安装依赖。例如在pipenv
中:
pipenv install
- 在
venv
中:
pip install -r requirements.txt
- 生成
- 部署:
- 使用
pipenv
:- 在部署环境中安装
pipenv
:
pip install pipenv
- 复制项目目录及
Pipfile
和Pipfile.lock
到部署环境,进入项目目录:
cd my_project
- 安装依赖:
pipenv install --deploy
- 在部署环境中安装
- 使用
venv
+requirements.txt
:- 在部署环境创建
venv
:
python -m venv myenv source myenv/bin/activate # Windows下使用 `myenv\Scripts\activate`
- 复制
requirements.txt
到部署环境,安装依赖:
pip install -r requirements.txt
- 在部署环境创建
- 使用