【开心码农养成记】Python初新者练习手札-串列、元组和字典练习题小搞搞

http://img2.58codes.com/2024/20159965sRrDw564W1.png

前情提要:

颱风都转弯不来的时刻,当然是继续开心码农学习日常了!

这次还是做基本练习中的串列、元组和字典方面的练习,但课本有给学习评量的题目,但是却没给解答啊......http://img2.58codes.com/2024/emoticon06.gif

所以只能自立自强,来一场作为新手特权的胡搞瞎搞吧...http://img2.58codes.com/2024/emoticon01.gif


学习评量的题目:

这次一共有两个,分别是:

1.使用串列['tom', 'mary', 'joe']建立元组,然后对应成绩元组,项目是85, 76和58,在显示学生、成绩总分和平均。
并让使用者输入学生姓名查询成绩。

2.将题目1.改用字典建立学习评量,将CH练习4.中的姓名为键,分数为值


既然得到题目了,那就进入小搞搞环节吧!

实作:

题目1.

lst1 = ['tom', 'mary', 'joe']t1 = tuple(lst1)t2 =(85, 76, 58)count1= str(input('请输入姓名:'))for i in t1:    if i == count1:       s = t1.index(count1)       #print(t1[s])       print(t1[s], '的分数是: %d 分' % (t2[s]))

说明:
题目1.相对比较简单,就是设定变数后把题目要求的值给塞进去。

虽然应该有更快的一行完成(?),但目前继续回去打木人的我还不会......http://img2.58codes.com/2024/emoticon02.gif

然后算出输入的姓名在元组中的索引值,并当成参数呼叫回来。

执行结果:
http://img2.58codes.com/2024/20159965sGt8tRGtDG.png


至于题目2.,虽然有解出来但感觉似乎哪里怪怪的,总觉得应该有更好的解法...吧(?)http://img2.58codes.com/2024/emoticon17.gif

lst1 = ['tom', 'mary', 'joe']t1 = tuple(lst1)t2 =(85, 76, 58)s2 =len(t1)d1={t1[j]:t2[j] for j in range(s2)}print(d1)

说明:

基本上的程式码是和第一题大致一样,主要差别在下方加入字典d1的部分。

这边是先设一个s2变数取得t1的长度,主要的目的是为了取得写入字典时的迴圈执行的次数。

j 基本就是 i, 主要是取得索引值,不过因为再写的时候是直接沿用第一题的程式码,所以就改成j了!

执行结果:
http://img2.58codes.com/2024/20159965W9ubTODvVH.png


题外话:

其实题目1有被我自己修改过。

原本课本上的是要输入学号来找学生姓名和成绩,但题目上并没有给学号啊......http://img2.58codes.com/2024/emoticon04.gif

虽然自己生也不是问题,但我选择无视...http://img2.58codes.com/2024/emoticon48.gif


关于作者: 网站小编

码农网专注IT技术教程资源分享平台,学习资源下载网站,58码农网包含计算机技术、网站程序源码下载、编程技术论坛、互联网资源下载等产品服务,提供原创、优质、完整内容的专业码农交流分享平台。

热门文章