Python 点滴5 文件读写举例-生成测验试卷

几个小知识:(程序中使用到了)

random.shuffle() 函数 : 方法将序列的所有元素随机排序

radom.sample(a,n)函数:从序列a中随机抽取n个元素,并将n个元素生以list形式返回

.keys() 函数返回的是一个可迭代序列 不是列表,需要 list(X.keys())才能得到列表

index()函数可用于查找列表中对应函数的索引值并输出

‘ABCD'[i] 意思是:ABCD看成一个数组,在每次的循环中迭代,值分别是 ‘A’、’B’、’C’、’D’

import randomcapitals = {‘Alabama’:’Montgomery’,’Alaska’:’Juneau’,’Arizona’:’Phoenix’,’Arkansas’:’Little Rock’,’California’:’Sacramento’,’Colorado’:’Denver’,’Connectiuct’:’Hartford’,’Delaware’:’Dover’,’Florida’:’Tallahassee’,’Georgia’:’Atlanta’,’Hawaii’:’Honolulu’,’Idaho’:’Boise’,’Illinois’:’Springfield’,’Indiana’:’Indianapolis’,’Iowa’:’Des Moines’,’Kansas’:’Topeka’,’Kentucky’:’Frankfort’,’Louisiana’:’Baton Rouge’,’Maine’:’Augusta’,’Maryland’:’Annapolis’,’Massachusetts’:’Boston’,’Michigan’:’Lanslng’,’Minnesota’:’Saint Paul’,’Mississippi’:’Jackson’,’Missouri’:’Jefferson City’,’Montana’:’Helena’,’Nebraska’:’Lincoln’,’Nevada’:’Carson City’,’New Hampshire’:’Concord’,’New Jersey’:’Trenton’,’New Mexico’:’Santa Fe’,’New York’:’Albany’,’North Carolina’:’Raleigh’,’North Dakota’:’Bismarck’,’Ohio’:’Columbus’,’Oklahome’:’Oklahoma City’,’Oregon’:’Salem’,’Pennsylvania’:’Harrisburg’,’Rhode Island’:’Providence’,’South Crolina’:’Columbia’,’South Dakota’:’Pierre’,’Tennessee’:’Nashville’,’Texas’:’Austin’,’Utah’:’Salt Lake City’,’Vermont’:’Montpelier’,’Virginia’:’Richmond’,’Washington’:’Olympia’,’West Virginia’:’Charleston’,’Wisconsin’:’Madison’,’Wyoming’:’Cheyenne’}for quizNum in range(35):quizFile = open(‘capitalsquiz%s.txt’ % (quizNum + 1),’w’)answerKeyFile = open(‘capitalsquiz_answers%s.txt’ % (quizNum + 1),’w’)quizFile.write(‘Name:Date:Period:’)quizFile.write((‘ ‘ * 20) + ‘State Capitals Quiz (From %s)’ % (quizNum + 1))quizFile.write(”)states = list(capitals.key())random.shuffle(states)for questionNum in range(50):correctAnswer = capitals(states[questionNum])wrongAnswers = list(capitals.valuse())del wrongAnswers[wrongAnswers.index(correctAnswer)]wrongAnswers = random.sample(wrongAnswers,3)answerOptions = wrongAnswers + [correctAnswer]random.shuffle(answerOptions)quizFile.write(‘%s. What is the capital of %s?’ %(questionNum + 1,states[questionNum]))for i in range(4):quizFile.write:quizFile.write( ‘%s. %s’ %(‘ABCD'[i],answerOptions[i]))quizFile.write(”)answerKeyFile.write(‘%s. %s’ %(questionNum + 1,’ABCD'[answerOptions.index(correctAnswer)]))quizfile.close()answerKeyFile.close()

郑重声明:本文内容及图片均整理自互联网,不代表本站立场,版权归原作者所有,如有侵权请联系管理员(admin#wlmqw.com)删除。
(0)
用户投稿
上一篇 2022年9月9日
下一篇 2022年9月9日

相关推荐

  • 原神 2.8版本活动太难了?金苹果群岛让玩家们欲拒还迎

    #原神# 你好,欢迎回到Holdon2099的原神世界。现在是北京时间2022年的8月1日,距离2.8版本上半卡池的结束,还有一天零几个小时。在此之前,从来没有感觉时间如此漫长,即…

    2022年8月14日
  • 才知道,吃这2种食用油,比吃地沟油更伤身体,快告诉老人别吃了

    多学学、多看看!点击关注,每天精彩不断!导读:才知道,吃这2种食用油,比吃地沟油更伤身体,快告诉老人别吃了!随着社会的进步跟发展,人们的生活水平以及生活质量都得到了一定的提高,现在…

    2022年8月16日
  • 李嘉欣与何超琼同台,终于见识了女明星与真豪门的差距有多大了

    美不分高低贵贱,不同风格、不同个性的美聚集在一起才会赏心悦目。即便是有些人穿着一样的风格,呈现出的视觉效果也是有差别的,其中很大一个原因就是气场不同。气场强大的人就算‘披麻袋’也能…

    2022年8月25日
  • 一文了解 Maven 的 settings.xml 配置文件

    settings.xml有什么用 从settings.xml的文件名就可以看出,它是用来设置maven参数的配置文件。并且,settings.xml是maven的全局配置文件。而p…

    2022年7月8日
  • C++看图学码:std::vector

    简介 向量是代表数组的序列容器,可以改变大小。就像数组一样,向量对其元素使用连续的存储位置,这意味着它们的元素也可以使用常规指针上的偏移量来访问其元素,而且和数组一样有效。但与数组…

    2022年6月23日
  • 变压吸附制氮系统中的气体状态转换

    #氦气# 说到氦,你可能不是新来的。在生活中,它经常被用来制造氦气球。如果你认为氦气是一种廉价的普通气体,那你就错了。事实上,全球氦资源目前已经枯竭。由于其工业价值高,在地球上很低…

    2022年8月17日
  • 胡杏儿为上浪姐也真拼,剃去长发太有男人味,皮衣马甲另类博出镜

    随着各种审美元素的冲击,国内的服装市场也呈现出断层化的发展,年轻一代疯狂追逐于潮流元素,而中年女性则陷入了穿衣的尴尬区。在保持个性和贴合年龄的双重考虑下,明星们的穿搭也开始不断寻求…

    2022年5月14日
  • 《原神》须弥前瞻短片分析

    《原神》须弥前瞻短片01——神奇的草元素_哔哩哔哩_bilibili 原神关于须弥前瞻短片于2022年7月9日12点发布。在本次视频中,展示了主角转化为草元素的技能,须弥部分场景,…

    2022年7月10日
  • 酒馆战棋更新补丁:滑油机器人、加尔回归!多彩龙再迎调整

    此更新补丁将于下周三正式上线! 异变多彩龙:生命值由1点上调至4点。 调整后效果改为:提升酒馆时,根据友方龙随从的数量提升攻击力(不再加生命值)。 多彩龙应该改名叫多舛龙,真是改了…

    2022年8月15日
  • vue3源码分析-实现props,emit,事件处理等

    引言 vue3源码分析——rollup打包monorepo vue3源码分析——实现组件的挂载流程 本期来实现,setup里面使用props,父子组件通信props和emit等,所…

    2022年6月19日

联系我们

联系邮箱:admin#wlmqw.com
工作时间:周一至周五,10:30-18:30,节假日休息