- 创建 .idea 目录和相关配置文件,设置项目结构 - 添加多个课堂成果示例代码,涵盖不同主题和功能 - 创建和配置 .gitignore 文件,忽略特定文件和目录
50 lines
2.1 KiB
Python
50 lines
2.1 KiB
Python
import random
|
||
# 匹配的国家和地标
|
||
landmarks = {"中国": "长城", "古埃及": "金字塔", "法国": "埃菲尔铁塔",
|
||
"印度": "泰姬陵", "英国": "大本钟", "美国": "自由女神像",
|
||
"意大利": "比萨斜塔", "澳大利亚": "悉尼歌剧院", "希腊": "帕特农神庙",
|
||
"日本": "富士山", "南非": "好望角", "丹麦": "小美人鱼铜像",
|
||
"巴西": "基督像", "泰国": "大皇宫", "加拿大": "CN塔",
|
||
"荷兰": "桑斯安斯风车村", "俄罗斯": "红场", "捷克": "布拉格城堡",
|
||
"沙特阿拉伯": "麦加大清真寺", "西班牙": "圣家族大教堂"
|
||
}
|
||
|
||
# 生成10套测验
|
||
for i in range(10):
|
||
# 新建带编号的测试卷和答案文件
|
||
testNum = i + 1
|
||
testFile = open('小小旅行家%s.txt'%(testNum), 'w')
|
||
answerFile = open('小小旅行家_答案%s.txt'%(testNum), 'w')
|
||
# 写测试卷的抬头
|
||
testFile.write('姓名:\n\n班级:\n\n日期:\n\n')
|
||
testFile.write((' ' * 20) + '小小旅行家地标挑战赛 (Form %s)' % (testNum))
|
||
testFile.write('\n\n')
|
||
# 打乱顺序
|
||
states = list(landmarks.keys())
|
||
random.shuffle(states)
|
||
# 生成10道题目和答案
|
||
for j in range(10):
|
||
# 设置问题并写入
|
||
questionNum = j + 1
|
||
state = states[j]
|
||
testFile.write(f'{questionNum}. {state} 的地标建筑是?\n')
|
||
# 获取选项
|
||
correctAnswer = landmarks[state]
|
||
wrongAnswers = list(landmarks.values())
|
||
wrongAnswers.remove(correctAnswer)
|
||
wrongAnswers = random.sample(wrongAnswers, 3)
|
||
answerOptions = wrongAnswers + [correctAnswer]
|
||
# 打乱【答案选项】
|
||
random.shuffle(answerOptions)
|
||
# 将选项写入测验文件
|
||
for k in range(4):
|
||
testFile.write(f' {"ABCD"[k]}. {answerOptions[k]}\n')
|
||
testFile.write('\n')
|
||
# 将答案写入答案文件
|
||
correctOption = 'ABCD'[answerOptions.index(correctAnswer)]
|
||
answerFile.write(f'{questionNum}. {correctOption}\n')
|
||
# 关闭测验文件、答案文件
|
||
testFile.close()
|
||
answerFile.close()
|
||
|