-
Notifications
You must be signed in to change notification settings - Fork 36
Expand file tree
/
Copy pathquiz.json
More file actions
64 lines (64 loc) · 3.02 KB
/
Copy pathquiz.json
File metadata and controls
64 lines (64 loc) · 3.02 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
{
"questions": [
{
"stage": "pre",
"question": "虚拟环境解决了什么问题?",
"options": [
"它们通过优化解释器让 Python 代码运行更快",
"它们隔离项目依赖,使不同项目可以使用不同的包版本",
"它们提供一个管理 Python 脚本的图形界面",
"它们自动将包更新到最新版本"
],
"correct": 1,
"explanation": "虚拟环境为每个项目提供一套独立的包。没有它们,为一个项目安装 PyTorch 2.4 会覆盖另一个项目所需的 PyTorch 2.1。"
},
{
"stage": "pre",
"question": "在 Python 依赖管理的语境中,锁文件(lockfile)是什么?",
"options": [
"一个阻止其他用户编辑你代码的文件",
"一个把每个包都锁定到精确版本以实现可复现安装的文件",
"一个锁定 Python 解释器版本的文件",
"一个加密你项目依赖的文件"
],
"correct": 1,
"explanation": "锁文件记录每个包的精确版本(包括传递依赖),这样任何人据此安装都会得到完全相同的包,从而确保可复现性。"
},
{
"stage": "post",
"question": "如何验证你的 pip 和 python 命令用的是虚拟环境而不是系统 Python?",
"options": [
"运行 'pip --version' 并检查版本号",
"运行 'which python' 并确认它显示 .venv/bin/python 而不是 /usr/bin/python",
"检查终端的背景颜色是否变了",
"运行 'python --check-env' 来验证"
],
"correct": 1,
"explanation": "'which python'(在 Windows 上是 'where python')会显示解释器的完整路径。如果它指向 .venv/bin/python,说明你正处于虚拟环境中。"
},
{
"stage": "post",
"question": "为什么在同一个环境中混用 pip 和 conda 会有问题?",
"options": [
"pip 安装的包与 conda 的 Python 解释器不兼容",
"pip 安装会破坏 conda 的依赖追踪,造成难以排查的冲突",
"conda 无法安装 pip 已经安装过的包",
"它会让每个包占用的磁盘空间翻倍"
],
"correct": 1,
"explanation": "conda 维护着自己的依赖求解器。pip 安装会绕过它,于是 conda 不再知道环境的真实状态。这会导致难以解决的依赖冲突。"
},
{
"stage": "post",
"question": "尽管装有 NVIDIA GPU,你的 PyTorch 代码却报告 'CUDA not available'。最可能的原因是什么?",
"options": [
"你的 GPU 不支持 CUDA",
"安装的 PyTorch 所带的 CUDA 版本与你的 GPU 驱动不兼容",
"你忘记导入 torch.cuda 模块",
"虚拟环境无法访问 GPU 硬件"
],
"correct": 1,
"explanation": "PyTorch 附带为特定 CUDA 版本编译的 CUDA 绑定。如果 PyTorch 的 CUDA 版本高于你驱动支持的 CUDA 版本,CUDA 将不可用。可用 nvidia-smi 和 torch.version.cuda 检查。"
}
]
}