Repository navigation
Expand file tree
/
Copy pathquestions.js
More file actions
172 lines (140 loc) · 21.4 KB
/
Copy pathquestions.js
File metadata and controls
172 lines (140 loc) · 21.4 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
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
// 每关四道补充题;原有剧情题保留为第一题。列顺序:题目、正确项、干扰项、干扰项、解释、可选代码。
const groups = String.raw`
王国程序接收玩家名字,input() 的返回类型是什么?|字符串 str|整数 int|布尔 bool|input 返回文本,数值输入需显式转换。
哪一步属于 IPO 中的处理?|根据体重和身高计算 BMI|从键盘输入身高|将结果打印到屏幕|计算与转换属于处理,输入与输出承担其他职责。
这条法术为什么无法运行?|字符串缺少结束引号|print 不能输出中文|括号必须用方括号|引号必须成对,属于语法错误。|print("欢迎勇者)
如何确认 Python 环境配置成功?|运行最小 .py 程序并检查输出|只安装编辑器不运行|仅更改文件图标|实际执行可验证解释器与运行路径。
导师要逐行讲解程序,应在提示词中加入什么?|要求逐行解释并说明输入输出|只说“越复杂越好”|不提供任务目标|明确解释要求有助于理解代码而非照抄。
下面程序的输出是什么?|Happy New Year 2026!|Happy New Year year!|2026 + 1|f 字符串将 year 的值放到占位符中。|year = "2026"\nprint(f"Happy New Year {year}!")
AI 生成代码后,勇者首先应该怎么做?|读懂并运行可验证的样例|直接删除所有注释|假定每行都正确|输出必须通过理解和样例验证。
新年问候程序的验收标准哪项最清晰?|输入2026时输出指定问候|代码看起来长|窗口颜色漂亮|明确输入与预期输出才能判断是否满足需求。
两瓶药剂做整数除法,输出是什么?|2|2.5|1|// 是向下取整除法。|print(5 // 2)
需要将用户输入用于体重计算,应选哪个写法?|float(input("体重:"))|input("体重:") + 1|str(input("体重:"))|float 将数字文本转换为浮点数。
药剂剩余量的余数是多少?|1|2|3|% 计算除法的余数。|print(10 % 3)
计算 height 的平方,应使用什么?|height ** 2|height * 2|height ^ 2|** 是幂运算,^ 是按位异或。
门卫检查 ready,结果是什么?|False|True|10|and 要求两边都成立,第二个条件为假。|level = 10\nprint(level >= 10 and level < 10)
哪条条件能检查血量在1到100之间且包含两端?|1 <= hp <= 100|1 < hp < 100|hp == 1 and hp == 100|连续比较表达式可包含边界。
为了测试药剂配方的临界判断,应重点检查什么?|阈值本身及其两侧|只测一个普通值|只测变量名字|边界及邻近值能揭示大于和大于等于的差别。
not 运算后的输出是什么?|True|False|0|not 反转布尔值。|has_potion = False\nprint(not has_potion)
AI 编造了标准库中不存在的函数,这通常称作什么?|幻觉|解释器升级|正常的性能优化|模型可能生成看似合理但无事实依据的 API。
为什么仅“运行一次成功”不足以证明程序正确?|可能遗漏边界与错误输入|Python 每次都随机运行|程序永远不能验证|正常样例不能覆盖所有路径。
哪个测试最容易揭示除零风险?|输入数量0|输入数量10|输入数量100|分母为零会触发 ZeroDivisionError。
如何改善“帮我处理成绩”的提示词?|补充数据格式、操作与预期输出|删掉所有输入示例|要求越多未知库越好|清晰需求降低模型误解任务的概率。
下面 mean 函数对 [2,4] 返回什么?|3.0|6|2|求和为6,长度为2,普通除法得到3.0。|def mean(values):\n return sum(values) / len(values)\nprint(mean([2, 4]))
assert 的条件不成立时会怎样?|抛出 AssertionError|自动修复代码|静默更改答案|断言用于发现预期不满足的情况。
记录 AI 调试失败时,哪项信息最有用?|原提示词、输入、实际与预期输出|只记录“失败了”|只记录界面颜色|可复现证据让修正和复查有依据。
若 AI 修改了需求以绕过失败测试,应该怎么办?|恢复需求并修正实现|接受任何能通过的结果|删除所有测试|测试应检验真实需求,不能通过偷换需求规避错误。
执行 int("药剂") 会触发哪类错误?|运行时 ValueError|SyntaxError|不会出错|不能将非数字文本转换为整数。
断点调试暂停后最适合检查什么?|变量值与调用栈|仅检查壁纸|只检查文件图标|断点提供运行现场,帮助定位错误来源。
为什么 print 日志要输出中间变量?|观察计算过程与分支路径|让代码自动变快|替代所有测试|中间状态能帮助判断错误出现在何处。
把面积写成 width * height,但 width 未定义,会怎样?|运行时 NameError|一定算出0|语法必须报错|访问未定义名称会触发 NameError。
except ZeroDivisionError 能捕获什么?|除零错误|所有错误|仅语法错误|具体异常类型仅处理对应的预期问题。
下面程序输出什么?|请输入整数|矿车8|不会输出|int 转换失败,进入 ValueError 分支。|try:\n count = int("eight")\n print(count)\nexcept ValueError:\n print("请输入整数")
为什么不推荐用裸 except 隐藏所有异常?|会掩盖不相关的编程错误|Python 不允许 except|只能用于数字|捕获范围过宽会让真实错误难以发现。
要定位 count 何时变成0,哪个方法更合适?|在赋值附近设置断点并单步跟踪|不断更换变量名字|删掉除法语句就不再检查|跟踪状态变化比盲目改代码更有效。
下面循环共打印几次?|3次|4次|2次|range(3) 产生0、1、2。|for i in range(3):\n print(i)
猜数字程序何时适合使用 break?|猜中目标后结束循环|每次读取输入前|每次循环都无条件终止|break 用于达成结束条件时退出循环。
条件分支中,elif 的含义是什么?|前面条件未满足时继续检查另一个条件|同时执行所有分支|重复整个程序|if/elif/else 只执行匹配的分支。
在一轮遇到无效猜测后,想直接进入下一轮应使用什么?|continue|return 在所有场景都合适|import|continue 跳过本轮剩余语句。
下面 steps 循环打印哪些数字?|3、2、1|3、2、1、0|只打印3|条件 steps > 0 不包含0。|steps = 3\nwhile steps > 0:\n print(steps)\n steps -= 1
哪种变化有助于避免无限循环?|每轮更新影响循环条件的变量|永远固定条件为 True 且无 break|删除全部结束条件|循环需有能够到达的退出路径。
这段累加结果是什么?|6|3|10|1+2+3=6,range 的右端不包含4。|total = 0\nfor x in range(1, 4):\n total += x\nprint(total)
深层嵌套判断让代码难读,较合理的改善是什么?|提前处理无效情况并减少嵌套|增加更多相同分支|删掉必须的条件|结构优化应保持行为并提高可读性。
行囊列表的第一项索引是多少?|0|1|-1|Python 序列从0开始计数。
这段代码输出哪个物品?|火把|地图|药剂|负索引-1表示最后一项。|bag = ["药剂", "地图", "火把"]\nprint(bag[-1])
向列表末尾追加一个元素,应调用什么?|append|get|fullmatch|append 增加一个列表元素。
元组与列表的主要差别是什么?|元组不能替换其元素|元组没有顺序|列表不能索引|二者都有序,列表可变,元组自身不可变。
对元组执行 point[0] = 5 会怎样?|TypeError|自动变成列表|一定成功|元组不支持元素赋值。
下面别名操作后 a 的长度是多少?|3|2|1|a 与 b 指向同一列表,append 修改共享对象。|a = [1, 2]\nb = a\nb.append(3)\nprint(len(a))
想保留独立的列表副本,应使用哪个写法?|copy = bag.copy()|copy = bag|copy = len(bag)|copy 生成新的浅拷贝列表。
这段切片返回什么?|[20, 30]|[10, 20]|[20, 30, 40]|切片包含索引1与2,不包含3。|print([10, 20, 30, 40][1:3])
字典中用于查找值的标识称为什么?|键 key|切片 stop|循环 break|字典建立键到值的映射。
下面代码打印什么?|95|90|两个艾琳|对同一个键再次赋值会更新值。|scores = {"艾琳": 90}\nscores["艾琳"] = 95\nprint(scores["艾琳"])
哪个容器最适合去除重复徽章?|集合 set|普通列表自动去重|字符串自动去重|集合保存不重复元素。
按姓名频繁查询成绩,一般选什么结构?|字典映射姓名到分数|每次扫描超长列表|把全部成绩拼成字符串|字典的常见查找平均时间复杂度为 O(1)。
集合的并集操作会得到什么?|两个集合全部不同元素|只要共同元素|只要第一个元素|并集合并元素并自动去重。
字典 get("勇者",0) 在键缺失时返回什么?|0|一定报 KeyError|字符串勇者|get 的第二个参数是默认值。
下面差集结果是什么?|{1, 3}|{2}|{1, 2, 3}|差集取左集合有而右集合没有的元素。|print({1, 2, 3} - {2})
为什么不能把列表直接作为字典键?|列表可变且不可哈希|列表没有长度|字典只能用中文键|字典键需要可哈希,列表不满足此条件。
正则表达式中的 + 表示什么?|前面的模式重复至少一次|任意数学加法|必须重复零次|+ 是量词,指定一次或多次。
Python 写 r"\d+" 中的 r 有什么作用?|保留反斜杠的原始字符串写法|强制变成数字|让正则自动忽略大小写|raw 字符串减少字符串转义对模式的影响。
从一段信件提取多个号码,最适合调用什么?|re.findall|math.sqrt|string.ascii_letters|findall 返回所有匹配项。
双色球红球抽6个不同号码,应选什么?|random.sample(range(1,34),6)|6次独立 randint,不检查重复|math.sqrt(6)|sample 从总体无放回抽样,独立 randint 可能重复。
正则中的 [3-9] 匹配什么?|3到9中的一个字符|字符串3-9本身|任意九个字符|字符集范围匹配其中一个字符。
正则中的 ^ 和 $ 通常用于什么?|字符串起止位置约束|文本转大写|安装 re 模块|锚点用于限制匹配的位置。
手机号脱敏后输出什么?|138****5678|13812345678|****138|分组保留前3位与末4位,中间四位替换。|import re\nprint(re.sub(r"(1[3-9]\d)\d{4}(\d{4})", r"\1****\2", "13812345678"))
月利率为0时,等额本息月供应怎么计算?|本金除以期数|仍用含零分母的公式|本金乘以0|零利率时只需均摊本金,应单独处理。
函数的 return 用于什么?|把结果返回给调用者|只打印文字|导入模块|return 将计算结果交还调用方。
下面调用输出什么?|300|250|55|rate 用关键字参数覆盖默认值。|def salary(hours, rate=50):\n return hours * rate\nprint(salary(5, rate=60))
函数职责清晰、高内聚的例子是什么?|一个函数专注计算薪资|同一函数同时绘图爬虫发邮件|所有逻辑都全局复制|聚焦相关职责更易理解和验证。
下面调用后 bag 变成什么?|[1, 2]|[1]|[]|对可变参数对象追加元素会影响调用者看到的对象。|def add_item(items):\n items.append(2)\nbag = [1]\nadd_item(bag)\nprint(bag)
lambda x: x * 2 对3返回什么?|6|5|9|lambda 定义一个简短的匿名函数。
在 Python 3 中查看 map 的全部结果,常用什么?|list(map(...))|print 一定直接显示所有元素|int(map(...))|map 返回迭代器,list 可收集结果。
下面 filter 的结果是什么?|[60, 80]|[50, 60, 80]|[50]|filter 仅保留条件为真的元素。|print(list(filter(lambda x: x >= 60, [50, 60, 80])))
函数内部重新赋值 x = 9,会自动重新绑定外部 n 吗?|不会|总会|只要变量名不同就会|局部参数重新绑定不会重新绑定调用者的变量。
在 Python 中,一个 .py 文件可以作为什么?|模块|只能作为图片|只能作为数据库|模块文件可通过 import 使用。
from grades import average 表示什么?|从 grades 导入 average|将函数写入 CSV|安装整个 Python|该语句导入指定模块中的名称。
模块化成绩系统应怎样拆分?|按存储、计算、交互职责拆分|随机每10行一个文件|按字体颜色拆分|职责分解比任意切割更容易维护。
两个模块相互依赖导致导入问题时,优先检查什么?|循环依赖与职责划分|显示器分辨率|键盘方向|循环依赖可能在初始化阶段导致名称不可用。
自顶向下设计从哪里开始?|整体目标和子任务|先随机写工具函数|先堆满全部代码|先定义总目标,再分解为可验证的模块。
被导入模块的 __name__ 一般是什么?|模块名|始终是 __main__|一定是 None|只有直接执行的入口通常叫 __main__。
跨模块调试时,调用栈有什么用?|显示函数调用路径|自动删除文件|生成 UI 配色|调用栈帮助追踪执行如何到达当前位置。
主模块调用一个未实现的 load_data,会怎样?|未定义时会出现 NameError|import 自动补全实现|自动读取任意文件|模块化不意味着工具会自动生成缺失的函数。
open(...,"w") 对已有文件的影响是什么?|覆盖原内容|始终追加|只读不会写|w 会截断已有文件,需要避免误覆盖。
with open 的一个主要好处是什么?|退出上下文时自动关闭文件|自动纠正所有 JSON|自动上传文件|上下文管理负责资源清理。
JSON 更适合表示哪种数据?|嵌套的字典与列表|仅单个像素|只能固定两列的表格|JSON 可表示对象、数组和基础值。
保存中文 JSON 时 ensure_ascii=False 有什么作用?|保留可读的中文字符|禁用所有编码|把中文变成拼音|它控制非ASCII字符是否被转义。
CSV 文件通常采用什么组织方式?|行与列|函数调用栈|像素坐标|CSV 是常见的表格交换格式。
为什么 CSV 写入示例设置 newline=""?|让 csv 模块管理换行|让全部字段变成空|关闭所有文件功能|可避免某些平台额外的空行。
读取不存在的文件应考虑哪个异常?|FileNotFoundError|ZeroDivisionError|StopIteration 必定发生|文件路径不存在会触发 FileNotFoundError。
为什么不能简单追加多个 JSON 对象到单个普通 JSON 文件?|多个顶层对象不构成一个合法 JSON 文档|JSON 禁止中文|JSON 只能写数字|可保存数组或选择每行一条的 JSONL 格式。
安装 pandas 的常见命令是什么?|python -m pip install pandas|import 会自动安装所有库|print("install pandas")|pip 安装第三方包到相应 Python 环境。
Pandas DataFrame 表示什么?|二维表格数据|单个 HTTP 状态码|一个字符串字符|DataFrame 组织列与行,支持分析操作。
缺失值处理为什么需要理由?|填补或删除会影响分析结论|缺失值总应当改成100|任何策略都完全等价|不同处理方式可能改变均值和样本分布。
对地点分组求魔力均值,应选什么组合?|groupby 后 mean|dropna 后随意改数值|随机抽一个位置|分组聚合可比较不同地点的统计量。
发现魔力列被读成字符串后,应先做什么?|检查并进行适当类型转换|直接进行未经确认的算术|更改图表背景后忽略|数据类型不正确会影响计算和比较。
使用 fillna(0) 会做什么?|把缺失值填成0|把所有值改成0|只删除重复行|fillna 用指定值填补缺失位置。
为什么图表应标注单位与样本量?|帮助读者正确解释数据|仅为了占满页面|防止 Python 崩溃|明确上下文可减少误读与夸大结论。
如果只展示支持猜测的数据,主要问题是什么?|选择性样本导致偏差|图表必定更准确|第三方包不能工作|分析应披露完整范围与局限,不挑选证据。
HTTP API 的 URL 用于什么?|标识请求的资源地址|设定 Python 缩进|存储列表索引|URL 指向可访问的服务资源。
response.raise_for_status() 用于什么?|检查 HTTP 错误状态|保证业务数据真实|将所有数字转成字符串|HTTP错误与业务字段仍需分别验证。
调用 response.json() 后应进一步检查什么?|预期字段与数据结构|只看响应颜色|认为所有键必然存在|解析成功不保证结构满足程序需求。
为什么网络请求要处理异常?|可能超时、断网或服务失败|互联网永远不会失败|Requests 会自动补造数据|外部系统存在可预期的失败情况。
HTTP 404 通常表示什么?|资源不存在|请求必定成功|请求过多|404与200成功、429限流含义不同。
遇到天气字段缺失时,合理的行为是什么?|提示数据不可用并按设计处理|默认为晴天且不说明|编造一个温度|缺失数据不应该伪装成事实。
API 调用中 params 字典通常用于什么?|提供查询参数|改变所有环境变量|写入 JSON 文件|Requests 可把 params 编码为 URL 查询参数。
爬虫或 API 集成应遵守什么?|服务条款、隐私边界与频率限制|无限抓取所有私密数据|只关注请求速度|合规访问与数据责任也是开发要求。
大模型对话中的 messages 通常包含什么?|角色和内容|仅图片尺寸|只有解释器路径|常见接口用 role/content 表示对话消息。
API 密钥放在哪里更合适?|服务端环境变量|公开前端代码|公开仓库注释|密钥不应暴露给所有客户端或仓库读者。
模型输出可能带来哪种问题?|幻觉、偏见与错误|天然保证真实性|自动解决所有版权争议|输出仍需独立验证与伦理评估。
为什么先发送必要汇总信息更合理?|减少个人数据暴露|保证模型永远不会错|免除所有授权要求|数据最小化减少不必要的隐私风险。
提示词要求“提供来源”后,还需要什么?|独立查证来源存在且支持结论|把引用格式当成真实性保证|停止一切核验|模型可能虚构引用或曲解来源。
把姓名电话送给外部服务前,应先检查什么?|必要性、授权与使用目的|只检查字符串长度|认为所有平台默认允许|处理个人信息需明确目的与合适授权。
AI 生成代码的版权问题应如何处理?|考虑来源、许可证与使用边界|一律假定没有任何限制|删除作者就完全无风险|版权和许可证是需要判断的实际问题。
推荐算法可能造成什么社会影响?|信息茧房与偏见风险|必定让所有观点同等曝光|不存在任何隐私问题|推荐便利与社会风险应一起评估。
项目验收标准应该来自什么?|用户需求与明确目标|代码行数越多越好|文件名字越长越好|实现是否成功取决于解决了什么问题。
综合项目的任务分解有什么好处?|每个小任务能独立验证|消除所有错误无需测试|自动获取 API 密钥|拆解降低复杂度并便于跟踪进度。
答辩中为何要说明 AI 参与部分?|透明记录并展示自己理解与验证|证明无需理解代码|代替所有项目成果|使用记录与独立解释是课程能力要求。
哪项属于有价值的项目演示?|完整数据流和失败恢复|只展示空白欢迎页|仅朗读函数名字|演示应体现用户任务如何被完成。
all([True, True, False]) 的结果是什么?|False|True|3|all 要求所有元素都为真。
提交项目前发现空输入会崩溃,应怎么做?|修复并验证相关边界|只隐藏错误截图|删除需求中的输入功能|失败是需要解决和说明的实现问题。
项目说明中“尚未联网”应该如何表达?|明确说明离线示例与未实现能力|称作已经完全接入|忽略实际限制|准确说明能力边界帮助评审与使用者判断。
为何要为保存报告步骤设置验收检查?|确认结果真正落盘并可读取|只为增加代码行数|因为输出到屏幕就等于保存|完整任务包括持久化与后续可用性。
知识图谱复盘的作用是什么?|连接知识之间的关系|只机械抄写术语|替代所有实践|把类型、流程、函数和数据应用联系起来。
AI 辅助编程后,谁仍需承担代码验证责任?|开发与使用代码的人|只由 AI 承担|没有任何人|工具不能替代人的理解、判断与责任。
面对新技术,终身学习意味着什么?|持续学习、实践并检验理解|一次考试后停止学习|只追求工具名字|学习能力帮助适应持续变化的技术。
技术影响报告怎样避免单一立场?|结合证据评估收益、风险和改进|只列优点|只列未经证实的传闻|多角度证据让判断更完整。
反思报告引用一个网络说法前,应做什么?|核验出处与证据|只看转发数量|认为热度等于事实|有来源与可靠证据才能支持分析。
下列哪项是负责任的数据实践?|只保留必要数据并控制用途|无限保存全部个人记录|把数据公开当作默认行为|数据最小化与用途约束保护参与者。
完成课程后,最有价值的学习成果是什么?|能独立解释、验证并应用代码|背下所有库的名字|仅积累截图数量|理解和迁移应用能力比机械记忆更重要。
恶龙被解除诅咒的核心原因是什么?|勇者理解、验证并负责任地使用知识|盲目照抄先知答案|跳过所有失败记录|整个故事强调计算思维、求证与责任。
`.trim().split(/\n\s*\n/).map(block => block.split('\n').map(row => {
const [question, correct, wrong1, wrong2, explain, code] = row.split('|');
return {question,choices:[correct,wrong1,wrong2],answer:0,explain,code:code?.replaceAll('\\n','\n')};
}));
export function questionsFor(chapter, index) {
return [{question:chapter.question,choices:chapter.choices,answer:chapter.answer,explain:chapter.explain,code:chapter.code},...groups[index].map((q,n)=>{
const offset=(index+n)%3;
return {...q,choices:q.choices.slice(offset).concat(q.choices.slice(0,offset)),answer:(3-offset)%3};
})];
}