🔥码云GVP开源项目 12k star Uniapp+ElementUI 功能强大 支持多语言、二开方便! 广告
## 6.6 练习 1\. 分别举例说明现实中的什么信息适合用列表、元组、集合、字典来表示和处理。 2\. 以统计指标的计算为例,说明为什么同样是处理大量数据,有的程序不需要使用数据集 合体来存储大量数据,而有的程序则需要。 3\. 给定两个列表 `s1 = [2005,7,2,8]`和 `s2 = [’L’,’u’,’c’,'y']`,计算以下表达式: (1)`s1 + s2` (2)`2 * s1` (3)`s1[1]` (4)`s2[1:3]` (5)`s1[1] + s2[-1]` 4\. 对第 3 题中的列表进行以下操作后,s1 和 s2 的值是什么。各小题之间是独立的。 (1)`s1.remove(2)` (2)`s1.sort().reverse()` (3)`s1.append([s2.index(’c’)])` (4)`s2.pop(s1.pop(2))` (5)`s2.insert(s1[2],’I’)` 5\. 修改程序 6.1,使程序能计算更多统计指标(如标准差)。 6\. 程序设计:自己编程实现 Python 列表对象的方法。 (1)编写函数 `count(aList, x)`,功能同 `aList.count(x)`; (2)编写函数 `isin(aList, x)`,功能同 `x in aList`; (3)编写函数 `index(aList, x)`,功能同 `aList.index(x)`; (4)编写函数 `reverse(aList)`,功能同 `aList.reverse()`。 7\. 编写函数 `shuffle(aList)`,其功能是像洗牌一样将列表打乱。 8\. 利用筛法找出小于等于 n 的所有质数。基本思想是:首先创建从 2 到 n 的数值列表;然 后将列表的第一个数显示输出(是质数),并从列表中删除该数的所有倍数。重复以上过程 直至列表为空。例如,如果 n 为 10,则初始列表为[2, 3, 4, 5, 6, 7, 8, 9, 10]。输出 2,并删除 2、4、6、8、10。现在列表为[3, 5, 7, 9]。输出 3,删除 3、9。现在列表为[5, 7]。输出 5, 并删除 5。最后对[7]输出 7,删除 7。至此列表为空,程序结束。 9\. 设计一个学生信息管理系统。每个学生包括学号、姓名、年龄等信息,大量学生数据存 储在文件中。程序开始后向用户显示一个操作菜单,包括向数据文件增加数据项、删除数据 项、查找数据项和退出等功能。用户选择菜单项后执行相应功能,执行完毕回到菜单界面。 11\. 利用链表来实现堆栈数据结构。 12\. 分别利用普通列表和链表来实现队列数据结构。