CS61A的ok文件运行方法
本帖最后由 ling830 于 2026-7-31 18:08 编辑python ok -q python-basics -u --local
=====================================================================
Assignment: Lab 0
OK, version v1.18.1
=====================================================================
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Unlocking tests
At each "? ", type what you would expect the output to be.
Type exit() to quit
---------------------------------------------------------------------
Python Basics > Suite 1 > Case 1
(cases remaining: 1)
What would Python display? If you get stuck, try it out in the Python
interpreter!
>>> x = 20
>>> x + 2
? 22
-- OK! --
>>> x
? 20
-- OK! --
>>> y = 5
>>> y = y + 3
>>> y * 2
? 16
-- OK! --
>>> y + x
? 28
-- OK! --
---------------------------------------------------------------------
OK! All cases for Python Basics unlocked.
Cannot backup when running ok with --local.
D:\lab00>
在 PowerShell 配置文件中设置别名(仅作用于 PowerShell/VS Code 默认终端)
如果你主要使用 PowerShell,可以通过设置环境变量别名(Alias)来实现,不修改任何磁盘文件。
打开或创建 PowerShell 配置文件:
在 PowerShell 中运行:notepad $PROFILE
(如果提示文件不存在,点击“是”允许新建文件)
写入别名规则:
在打开的记事本中添加以下一行:Set-Alias -Name python3 -Value python
保存并生效:
保存文件并关闭记事本。重新打开 PowerShell 终端即可使用 python3。
这样的话,就可以直接复制网站上的命令,只在后面加 --local
不用删除前面的3
顺带一提:Windows 自带的 py 启动器
实际上,Windows 版 Python 安装包默认带了一个官方启动器 py.exe:
输入 py -3 或 py 即可直接调起 Python 3。
如果电脑上安装了多个 Python 版本(例如 3.10 和 3.12),用 py -3.10 或 py -3.12 可以非常方便地切换环境,无需手动修改环境变量。 在CS61A课程中,ok 是一个自动评分和测试工具,用于运行作业中的测试用例。你给出的命令 python ok -q python-basics -u --local 的作用是:
[*]python ok:用Python解释器运行ok脚本。
[*]-q python-basics:指定要测试的问题名称(这里是 python-basics)。
[*]-u:进入“解锁”模式,你需要手动输入每个表达式的预期输出,以解锁测试用例。
[*]--local:在本地运行,不将结果提交到远程服务器。
当你运行这个命令后,ok会逐个询问你预期结果(每行以 ? 开头),你输入正确答案后,它会显示 -- OK! -- 并解锁下一个用例。所有用例解锁后,你可以用 python ok -q python-basics --local(不带 -u)来实际运行代码并自动评分。
# 解锁步骤(一次):
python ok -q python-basics -u --local
# 自动评分步骤(多次):
python ok -q python-basics --local
注意:解锁只需一次,之后每次修改代码后只需运行自动评分即可。
以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。 FishC 发表于 2026-7-30 15:17
在CS61A课程中,ok 是一个自动评分和测试工具,用于运行作业中的测试用例。你给出的命令 python ok -q pyth ...
Cannot backup when running ok with --local.
是什么意思? ling830 发表于 2026-07-30 15:19
FishC 发表于 2026-7-30 15:17
在CS61A课程中,ok 是 ...
这条信息的意思是:当你使用 --local 参数时,ok 程序不会尝试连接远程服务器(因为指定了本地模式),因此无法将你的解锁进度备份到服务器。它只是一个提醒,不是错误,你可以忽略它,继续正常使用。
以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。 请问怎么查看分数呢 在 PowerShell 配置文件中设置别名(仅作用于 PowerShell/VS Code 默认终端)
如果你主要使用 PowerShell,可以通过设置环境变量别名(Alias)来实现,不修改任何磁盘文件。
打开或创建 PowerShell 配置文件:
在 PowerShell 中运行:
PowerShell
notepad $PROFILE
(如果提示文件不存在,点击“是”允许新建文件)
写入别名规则:
在打开的记事本中添加以下一行:
PowerShell
Set-Alias -Name python3 -Value python
保存并生效:
保存文件并关闭记事本。重新打开 PowerShell 终端即可使用 python3。 FIXYOU13 发表于 2026-7-31 16:47
请问怎么查看分数呢
python ok --score --local
本地服务器查看分数,不用输入邮箱 本帖最后由 ling830 于 2026-7-31 18:00 编辑
ling830 发表于 2026-7-31 17:56
本地服务器查看分数,不用输入邮箱
(base) PS E:\lab00> python ok --score --local
=====================================================================
Assignment: Lab 0
OK, version v1.18.1
=====================================================================
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Scoring tests
---------------------------------------------------------------------
Doctests for twenty_twenty_six
>>> from lab00 import *
>>> twenty_twenty_six()
2026
Score: 1.0/1
---------------------------------------------------------------------
Python Basics
Passed: 0
Failed: 0
0.0% passed
---------------------------------------------------------------------
Doctests for presem_survey
>>> from lab00 import *
>>> presem_survey(passphrase)
'f65fb8fdaeda6d85eb3089dcdf7784836dde30e260c0ad31b9b2e533'
Score: 1.0/1
---------------------------------------------------------------------
Point breakdown
twenty_twenty_six: 1.0/1
Python Basics: 0.0/0
presem_survey: 1.0/1
Score:
Total: 2.0
Cannot backup when running ok with --local.
(base) PS E:\lab00>
这里显示的最终总得分是 **2 分(满分 2 分)**!
从最后的汇总表格(Point breakdown)可以看到:
| 测试项目 | 得分 / 满分 | 状态 |
| --- | --- | --- |
| **twenty_twenty_six** | **1.0 / 1** | 通过 |
| **Python Basics** | **0.0 / 0** | 此项为概念选择题,无分值比例 |
| **presem_survey** | **1.0 / 1** | 通过 |
| **Total(总分)** | **2.0 / 2** | **全对通过!** |
---
底部的系统提示 `Cannot backup when running ok with --local` 只是在提醒你“*由于开启了 `--local` 离线模式,代码没有备份/上传到云端服务器*”。这对于本地自学练习完全没有影响,你的 **Lab 0 已经完美搞定**了!
页:
[1]