求助:SyntaxError: invalid syntax
程序员文章站
2022-06-26 13:20:23
...
求助:SyntaxError: invalid syntax
#! python3
import random
''' 目标:制作N份选项无序的试卷
步骤:1.创建文件(试卷文件和对应答案文件)
2.写入题头
3.写入题目和选项
4.关闭文件
重点:1.无序选项如何实现
已有数据是字典形式,key是题目内容,对应的value是正确答案,
选项都是value,所以先把所有value提取出来并列表化,list(capitals.values())
从中删除正确选项,并随机提取三个干扰选项,再加上正确答案,可形成具有4个元素的列表A。
然后将A中元素顺序打乱,并提取,即可得到4个无序的选项。
2.如何找出正确答案对应的选项
要利用无序选项在写入时,对应ABCD的顺序等于正确答案在列表A的顺序
'ABCD'[a.index(capitals[state])]
'''
#建立美国各州与州首府的字典数据
capitals = {'Alabama':'Montgomery','Alaska':'Juneau',
'Arizona':'Phoenix','Arkansas':'Little Rock',
'California':'Sacramento', 'Colorado':'Denver'}
#制作五份试卷
for quiznum in range(5):
#创建对象,分别对应quiz(1-5)的试卷和answer(1-5)的答案
quizFile = open('quiz%s.txt'%(quiznum + 1),'w')
answerFile = open('answer%s.txt'%(quiznum + 1),'w')
#quiz中写入姓名,班级和试卷题头
quizFile.write('Name:\nClass:\n\n')
quizFile.write((' '*20) + '美国地理常识测试题%s\n\n'%(quiznum + 1))
#列表化各州,并打乱顺序
states = list(capitals.keys())
random.shuffle(states)
#列表化各州首府,并打乱顺序
capital = list(capitals.values())
random.shuffle(capital)
#在每份试卷中写入六道题
for testnum in range(6):
#从打乱顺序的州中依次提取州名,并在试卷中写入名字
state = states[testnum]
quizFile.write('%s.美国%s的首府是?%(testnum + 1,state)')
#提取的州所对应的州首府,即正确答案
correct = capitals[state]
#删除州首府列表中的正确答案
del capital[capital.index(correct)]
#从州首府中随机提取3个州首府
wrong = random.sample(capital,3)
#列表化四个选项,并打乱顺序
option = list(wrong) + list(correct)
random.shuffle(option)
#在试卷对象中写入4个选项
for optionum in range(4):
quizFile.write('%s.%s'%('ABCD'[optionum],option_[optionum]))
#在答案对象中写入正确答案所对应的ABCD
answerFile.write('%s.%s\n'%(testnum + 1,'ABCD'[option.index(correct)])
quizFile.close()
answerFile.close()
运行后显示:
C:\Users\carrie\Desktop\test>C:/Users/carrie/AppData/Local/Programs/Python/Python37/python.exe c:/Users/carrie/Desktop/test/自动化办公/无序试卷随机出题(自习).py
File “c:/Users/carrie/Desktop/test/自动化办公/无序试卷随机出题(自习).py”, line 55
quizFile.close()
^
SyntaxError: invalid syntax
推荐阅读
-
SyntaxError: invalid character in identifier待解决
-
解决pip install xxx报错SyntaxError: invalid syntax的问题
-
python SyntaxError: invalid syntax end=''
-
SyntaxError: invalid syntax都可能是什么错
-
SyntaxError: invalid syntax
-
SyntaxError: invalid syntax
-
python if__name__ ==“__main__“: ^ SyntaxError: invalid syntax
-
求助:SyntaxError: invalid syntax
-
Python-SyntaxError: invalid syntax
-
Python_SyntaxError: invalid syntax