[color=]自闯了红灯被扣6分以来,可通过12123来进行学习增加分数。
[color=]现在仅就扣分的内容通过DeepSeek做了一个辅助小程序,用来增强记忆。
[color=]若有问题的,也请一并批评指教!
[color=]请自取:
[Python] 纯文本查看 复制代码import random
import copy
# 驾照扣分题库(示例)
questions = [
{
"question": "酒后驾驶机动车的,一次记多少分?",
"options": ["A. 6分", "B. 12分", "C. 3分", "D. 9分"],
"answer": "B"
},
{
"question": "在高速公路上倒车,一次记多少分?",
"options": ["A. 1分", "B. 6分", "C. 12分", "D. 9分"],
"answer": "C"
},
{
"question": "驾驶机动车违反道路交通信号灯通行时,一次记多少分?",
"options": ["A. 2分", "B. 6分", "C. 3分", "D. 12分"],
"answer": "B"
},
{
"question": "驾驶机动车未按规定使用灯光的,一次记多少分?",
"options": ["A. 1分", "B. 2分", "C. 3分", "D. 不记分"],
"answer": "A"
},
# 扣12分题型(新增4题)
{
"question": "驾驶伪造号牌的机动车上路行驶,一次记多少分?",
"options": ["A. 3分", "B. 6分", "C. 9分", "D. 12分"],
"answer": "D"
}, # :ml-citation{ref="1,3" data="citationList"}
{
"question": "造成交通事故后逃逸致人轻伤,尚不构成犯罪的,一次记多少分?",
"options": ["A. 6分", "B. 9分", "C. 12分", "D. 不记分"],
"answer": "C"
}, # :ml-citation{ref="1,4" data="citationList"}
{
"question": "驾驶小型客车在高速公路超速50%以上,一次记多少分?",
"options": ["A. 3分", "B. 6分", "C. 9分", "D. 12分"],
"answer": "D"
}, # :ml-citation{ref="3,4" data="citationList"}
{
"question": "代替他人接受交通违法处罚牟取经济利益的,一次记多少分?",
"options": ["A. 3分", "B. 6分", "C. 9分", "D. 12分"],
"answer": "D"
}, # :ml-citation{ref="1,8" data="citationList"}
# 扣9分题型(新增3题)
{
"question": "驾驶未悬挂机动车号牌的车辆上路行驶,一次记多少分?",
"options": ["A. 3分", "B. 6分", "C. 9分", "D. 12分"],
"answer": "C"
}, # :ml-citation{ref="1,4" data="citationList"}
{
"question": "驾驶与准驾车型不符的机动车的,一次记多少分?",
"options": ["A. 3分", "B. 9分", "C. 6分", "D. 12分"],
"answer": "B"
}, # :ml-citation{ref="1,3" data="citationList"}
{
"question": "驾驶7座以上载客汽车超员50%未达100%的,一次记多少分?",
"options": ["A. 3分", "B. 6分", "C. 9分", "D. 12分"],
"answer": "C"
}, # :ml-citation{ref="4,8" data="citationList"}
# 扣6分题型(新增4题)
{
"question": "驾驶机动车在高速公路占用应急车道行驶的,一次记多少分?",
"options": ["A. 3分", "B. 6分", "C. 9分", "D. 2分"],
"answer": "B"
}, # :ml-citation{ref="1,3" data="citationList"}
{
"question": "驾驶货车超过最大允许总质量30%未达50%的,一次记多少分?",
"options": ["A. 1分", "B. 3分", "C. 6分", "D. 9分"],
"answer": "C"
}, # :ml-citation{ref="4,8" data="citationList"}
{
"question": "驾驶证被暂扣期间驾驶机动车的,一次记多少分?",
"options": ["A. 3分", "B. 6分", "C. 9分", "D. 12分"],
"answer": "B"
}, # :ml-citation{ref="4,8" data="citationList"}
{
"question": "驾驶机动车不避让校车的,一次记多少分?",
"options": ["A. 3分", "B. 6分", "C. 9分", "D. 12分"],
"answer": "B"
}, # :ml-citation{ref="1,8" data="citationList"}
# 扣3分题型(新增4题)
{
"question": "驾驶机动车时拨打接听手持电话的,一次记多少分?",
"options": ["A. 1分", "B. 2分", "C. 3分", "D. 6分"],
"answer": "C"
}, # :ml-citation{ref="2,8" data="citationList"}
{
"question": "在高速公路不按规定车道行驶的,一次记多少分?",
"options": ["A. 1分", "B. 3分", "C. 6分", "D. 9分"],
"answer": "B"
}, # :ml-citation{ref="3,8" data="citationList"}
{
"question": "驾驶机动车在普通道路超速20%未达50%的,一次记多少分?",
"options": ["A. 1分", "B. 3分", "C. 6分", "D. 9分"],
"answer": "B"
}, # :ml-citation{ref="4,8" data="citationList"}
{
"question": "车辆发生故障未按规定设置警示标志的,一次记多少分?",
"options": ["A. 1分", "B. 3分", "C. 6分", "D. 9分"],
"answer": "B"
}, # :ml-citation{ref="4,8" data="citationList"}
# 扣1分题型(新增3题)
{
"question": "驾驶机动车未按规定使用灯光的,一次记多少分?",
"options": ["A. 1分", "B. 2分", "C. 3分", "D. 不记分"],
"answer": "A"
}, # :ml-citation{ref="2,8" data="citationList"}
{
"question": "驾驶摩托车不戴安全头盔的,一次记多少分?",
"options": ["A. 1分", "B. 2分", "C. 3分", "D. 6分"],
"answer": "A"
}, # :ml-citation{ref="2,8" data="citationList"}
{
"question": "驾驶货车长宽高超过规定的,一次记多少分?",
"options": ["A. 1分", "B. 3分", "C. 6分", "D. 9分"],
"answer": "A"
} # :ml-citation{ref="4,8" data="citationList"}
]
wrong_questions = []
def get_valid_input(options):
"""获取有效的用户输入"""
valid_choices = [option.split('.')[0].upper() for option in options]
while True:
user_input = input("请输入选项({})或输入Q退出:".format('/'.join(valid_choices))).strip().upper()
if user_input in valid_choices:
return user_input
if user_input == "Q":
return None
print("输入无效,请重新输入!")
def practice_questions(question):
"""练习单个问题的逻辑"""
print("\n" + question["question"])
for option in question["options"]:
print(option)
user_answer = get_valid_input(question["options"])
if user_answer is None:
return None # 用户退出
if user_answer == question["answer"]:
print("✅ 正确!")
return True
else:
print(f"❌ 错误!正确答案是:{question['answer']}")
return False
def update_wrong_questions(question):
"""更新错题库"""
for wq in wrong_questions:
if wq["question"] == question["question"]:
wq["correct_streak"] = 0
return
new_wrong = copy.deepcopy(question)
new_wrong["correct_streak"] = 0
wrong_questions.append(new_wrong)
# 主程序
while True:
print("\n" + "="*35)
print(f"当前错题数量:{len(wrong_questions)}")
print("="*35)
# 优先处理错题库
while wrong_questions:
index = random.randrange(len(wrong_questions))
current_q = wrong_questions[index]
result = practice_questions(current_q)
if result is None: # 用户请求退出
exit()
if result: # 回答正确
current_q["correct_streak"] += 1
if current_q["correct_streak"] >= 3:
del wrong_questions[index]
print("🎉 该题目已掌握,移出错题库!")
else: # 回答错误
current_q["correct_streak"] = 0
input("按回车继续练习...")
break # 每次只处理一个错题后返回主菜单
# 练习新题
current_q = random.choice(questions)
result = practice_questions(current_q)
if result is None: # 用户请求退出
break
if not result: # 回答错误时加入错题库
update_wrong_questions(current_q)
input("按回车继续练习...")
以上代码运行的情况如下:
[Plain Text] 纯文本查看 复制代码===================================
当前错题数量:0
===================================
驾驶证被暂扣期间驾驶机动车的,一次记多少分?
A. 3分
B. 6分
C. 9分
D. 12分
请输入选项(A/B/C/D)或输入Q退出:d
❌ 错误!正确答案是:B
按回车继续练习...
===================================
当前错题数量:1
===================================
驾驶证被暂扣期间驾驶机动车的,一次记多少分?
A. 3分
B. 6分
C. 9分
D. 12分
请输入选项(A/B/C/D)或输入Q退出:b
✅ 正确!
按回车继续练习...
代替他人接受交通违法处罚牟取经济利益的,一次记多少分?
A. 3分
B. 6分
C. 9分
D. 12分
请输入选项(A/B/C/D)或输入Q退出:d
✅ 正确!
按回车继续练习...
===================================
当前错题数量:1
===================================
驾驶证被暂扣期间驾驶机动车的,一次记多少分?
A. 3分
B. 6分
C. 9分
D. 12分
请输入选项(A/B/C/D)或输入Q退出:b
✅ 正确!
按回车继续练习...
驾驶机动车不避让校车的,一次记多少分?
A. 3分
B. 6分
C. 9分
D. 12分
请输入选项(A/B/C/D)或输入Q退出:d
❌ 错误!正确答案是:B
按回车继续练习...
===================================
当前错题数量:2
===================================
驾驶机动车不避让校车的,一次记多少分?
A. 3分
B. 6分
C. 9分
D. 12分
请输入选项(A/B/C/D)或输入Q退出:b
✅ 正确!
按回车继续练习...
代替他人接受交通违法处罚牟取经济利益的,一次记多少分?
A. 3分
B. 6分
C. 9分
D. 12分
请输入选项(A/B/C/D)或输入Q退出:b
❌ 错误!正确答案是:D
按回车继续练习...
===================================
当前错题数量:3
===================================
驾驶机动车不避让校车的,一次记多少分?
A. 3分
B. 6分
C. 9分
D. 12分
请输入选项(A/B/C/D)或输入Q退出:b
✅ 正确!
按回车继续练习...
驾驶机动车未按规定使用灯光的,一次记多少分?
A. 1分
B. 2分
C. 3分
D. 不记分
请输入选项(A/B/C/D)或输入Q退出:a
✅ 正确!
按回车继续练习...
===================================
当前错题数量:3
===================================
驾驶证被暂扣期间驾驶机动车的,一次记多少分?
A. 3分
B. 6分
C. 9分
D. 12分
请输入选项(A/B/C/D)或输入Q退出:b
✅ 正确!
🎉 该题目已掌握,移出错题库!
按回车继续练习...
驾驶证被暂扣期间驾驶机动车的,一次记多少分?
A. 3分
B. 6分
C. 9分
D. 12分
请输入选项(A/B/C/D)或输入Q退出:b
✅ 正确!
按回车继续练习...
===================================
当前错题数量:2
===================================
驾驶机动车不避让校车的,一次记多少分?
A. 3分
B. 6分
C. 9分
D. 12分
请输入选项(A/B/C/D)或输入Q退出:b
✅ 正确!
🎉 该题目已掌握,移出错题库!
按回车继续练习...