科目三模拟灯光规则:
远光: 照明不良或没有灯光
示宽 + 双闪:路边停车
远近交替:夜间 + 超越/ 通过
近光: 其他
python3实现模拟夜间灯光考试
import random
light = [
["夜间通过急弯", "夜间通过坡路", "夜间通过拱桥",
"夜间通过人行横道", "夜间通过没有交通信号灯控制的路口", "夜间超越前方车辆"],
["夜间同方向跟车行驶", "夜间发生会车", "夜间路口左(右)转弯",
"夜间直行通过路口", "夜间在有路灯的道路行驶", "夜间照明良好的道路上行驶"],
["夜间在没有照明(照明不良)的道路上行驶"],
["路边临时停车"]
]
flag = 'Y'
while flag == 'Y':
num_i = []
num_j = []
Pass = 1
print('>>>'*10)
for t in range(5):
i = random.randint(0, 3)
num_i.append(i)
while (i == 2 or i == 3) and num_i.count(i) >= 2: #确保停车和灯光不良指令只出现一次
i = random.randint(0, 3)
num_i.append(i)
if i == 0 or i == 1:
j = random.randint(0, 5)
num_j.append(j)
while num_j.count(j) >= 2: #确保指令只出现一次
j = random.randint(0, 5)
num_j.append(j)
else:
j = 0
print(light[i][j])
key = input(": ")
if i == 0 and key == "远近交替":
continue
elif i == 1 and key == "近光":
continue
elif i == 2 and key == "远光":
continue
elif i == 3 and key == "示宽 双闪":
continue
else:
Pass = 0
print("成绩不合格")
flag = input("是否继续考试: 是/Y: ")
break
if Pass:
print("成绩合格,请回考试中心打印成绩")
flag = input("是否继续考试: 是/Y: ")