Python编程基础:实验2——列表及元组的使用

简介: Python编程基础实验2——列表及元组的使用

一、前言

在前面一个实验中我们练习了有关Python的循环结构,最近刚学习了列表及元组的相关知识,所以本期实验我们就来练习有关列别和元组的使用。

二、我的环境

  • 电脑系统:Windows 11
  • 语言版本:Python 3.10.4
  • 编译器:VSCode

三、实验目的与要求

  1. 理解列表概念并掌握Python中列表的使用
  2. 掌握列表的专用操作方法,熟练运用列表管理采集的信息,构建数据结构
  3. 理解元组与列表的区别

四、实验任务

1、程序填空

【填空9-1】随机产生20个100以内的整数,随机数种子是15,将这20个数添加到列表中。请完善代码。

importrandomls= []
random.seed(15)
foriinrange(20):
a=random.randint(0, 100)
ls.append(a)
print(ls)

它运行的结果是:

[26, 1, 66, 94, 4, 20, 30, 2, 7, 87, 18, 88, 47, 30, 14, 43, 59, 90, 45, 35]

【填空9-2】请补充横线处的代码,listA中存放了十一准备旅游的景点,让Python帮你增加一个“连岛”,去掉一个“孔望山”。请完善下面的代码。

listA= ['花果山', '渔湾', '孔望山', '连云港老街', '云台山']
listA.append("连岛")
listA.remove("孔望山")
print(listA)

它运行的结果是:

['花果山', '渔湾', '连云港老街', '云台山', '连岛']

【填空9-3】从键盘输入一个列表,计算输出列表元素的平均值。请完善代码。

defmean(numList):
s=0.0fornuminnumList:
s=s+numreturnsls=eval(input())
print("平均值:", mean(ls)/len(ls))

它运行的结果是:

10,7,4,8,6平均值:7.0

【填空9-4】使用无限循环方式从键盘上接收输入姓氏,将姓氏保存在一个列表中,按E键结束输入。请完善代码。

ls= []
whileTrue:
s=input("")
ifs=="E":
breakforcins:
ifc=="E":
breakls.append(s)
print(ls)
print("程序退出")

它运行的结果是:

zhangwanglizhaoliuE['zhang', 'wang', 'li', 'zhao', 'liu']
程序退出

2、程序编程

【编程9-1】下面是2021年江苏各市GDP总值

JiangSu_GDP=[16355, 22718, 3719, 3727, 14003, 11026, 8807, 8117, 6696, 6617, 6025, 4763, 4550]

请对JiangSu_GDP进行升序排序,并且打印出来

请对JiangSu_GDP进行降序排序,并且打印出来

请用排序+切片的方式,找出Top3的GDP

请用排序+切片的方式,找出最低的3个GDP

image-20220918144452866.png

JiangSu_GDP=[16355, 22718, 3719, 3727, 14003, 11026, 8807, 8117, 6696, 6617, 6025, 4763, 4550]
print("进行升序排序")
top=sorted(JiangSu_GDP, reverse=False)
print(top)
print("----------------------------------------------------------")
print("进行降序排序")
last=sorted(JiangSu_GDP, reverse=True)
print(last)
print("查看最后3个数据(top3)")
print(sorted(last[:3], reverse=False))
print("----------------------------------------------------------")
print("查看最前3个数据(最低的3个市GDP)")
print(top[:3])

它运行的结果是:

进行升序排序[3719, 3727, 4550, 4763, 6025, 6617, 6696, 8117, 8807, 11026, 14003, 16355, 22718]
----------------------------------------------------------进行降序排序[22718, 16355, 14003, 11026, 8807, 8117, 6696, 6617, 6025, 4763, 4550, 3727, 3719]
查看最后3个数据(top3)
[14003, 16355, 22718]
----------------------------------------------------------查看最前3个数据(最低的3个市GDP)[3719, 3727, 4550]

【编程9-2】你现有管理一个停车场,现有一组车位租用情况,结构如下:

car_nums=['苏 GA0001', '苏 GA00X9', '苏 GA0027']

现有新来了一辆车 ‘苏 GA0030’,请把它放在car_nums的最后面

现有新来了一辆车 ‘苏 GA0000’,请把它放在car_nums的最前面

‘苏 GA00X9’这辆车现在不租你的停车位,请把它从car_nums中删掉

现在来了一个车队[‘苏 GB0001’, ‘苏 GB0002’, ‘苏 GB0003’],请用一行代码把它加到car_nums中。

image-20220918144513718.png

car_nums=['苏 GA0001', '苏 GA00X9', '苏 GA0027']
print("现有新来了一辆车 '苏 GA0030',请把它放在car_nums的最后面")
car_nums.append('苏 GA0030')
print(car_nums)
print("----------------------------------------------------------------")
print("现有新来了一辆车 '苏 GA0000',请把它放在car_nums的最前面")
car_nums.insert(0, '苏 GA0000')
print(car_nums)
print("----------------------------------------------------------------")
print("'苏 GA00X9'这辆车现在不租你的停车位,请把它从car_nums中删掉")
car_nums.remove('苏 GA00X9')
print(car_nums)
print("----------------------------------------------------------------")
print("现在来了一个车队['苏 GB0001', '苏 GB0002', '苏 GB0003'],请用一行代码把它加到car_nums中")
car_nums.extend(['苏 GB0001', '苏 GB0002', '苏 GB0003'])
print(car_nums)

它运行的结果是:

现有新来了一辆车'苏 GA0030',请把它放在car_nums的最后面['苏 GA0001', '苏 GA00X9', '苏 GA0027', '苏 GA0030']      
----------------------------------------------------------------现有新来了一辆车'苏 GA0000',请把它放在car_nums的最前面['苏 GA0000', '苏 GA0001', '苏 GA00X9', '苏 GA0027', '苏 GA0030']
----------------------------------------------------------------'苏 GA00X9'这辆车现在不租你的停车位,请把它从car_nums中删['苏 GA0000', '苏 GA0001', '苏 GA0027', '苏 GA0030']      
----------------------------------------------------------------现在来了一个车队['苏 GB0001', '苏 GB0002', '苏 GB0003']请用一行代码把它加到car_nums中['苏 GA0000', '苏 GA0001', '苏 GA0027', '苏 GA0030', '苏 GB0001', '苏 GB0002', '苏 GB0003']

五、最后我想说

本期的Python实验就到这里了,希望大家都能实操一遍,实操很重要,不然以后拿到题目之后无从下手,这些也是把之前的知识以做题的方式复习一遍,都是基础知识,相信你们很快就能掌握。

目录
相关文章
|
3月前
|
Python
Python编程:运算符详解
本文全面详解Python各类运算符,涵盖算术、比较、逻辑、赋值、位、身份、成员运算符及优先级规则,结合实例代码与运行结果,助你深入掌握Python运算符的使用方法与应用场景。
291 3
|
3月前
|
数据处理 Python
Python编程:类型转换与输入输出
本教程介绍Python中输入输出与类型转换的基础知识,涵盖input()和print()的使用,int()、float()等类型转换方法,并通过综合示例演示数据处理、错误处理及格式化输出,助你掌握核心编程技能。
529 3
|
3月前
|
索引 Python
Python 列表切片赋值教程:掌握 “移花接木” 式列表修改技巧
本文通过生动的“嫁接”比喻,讲解Python列表切片赋值操作。切片可修改原列表内容,实现头部、尾部或中间元素替换,支持不等长赋值,灵活实现列表结构更新。
161 1
|
3月前
|
并行计算 安全 计算机视觉
Python多进程编程:用multiprocessing突破GIL限制
Python中GIL限制多线程性能,尤其在CPU密集型任务中。`multiprocessing`模块通过创建独立进程,绕过GIL,实现真正的并行计算。它支持进程池、队列、管道、共享内存和同步机制,适用于科学计算、图像处理等场景。相比多线程,多进程更适合利用多核优势,虽有较高内存开销,但能显著提升性能。合理使用进程池与通信机制,可最大化效率。
345 3
|
3月前
|
Java 调度 数据库
Python threading模块:多线程编程的实战指南
本文深入讲解Python多线程编程,涵盖threading模块的核心用法:线程创建、生命周期、同步机制(锁、信号量、条件变量)、线程通信(队列)、守护线程与线程池应用。结合实战案例,如多线程下载器,帮助开发者提升程序并发性能,适用于I/O密集型任务处理。
379 0
|
4月前
|
数据采集 机器学习/深度学习 人工智能
Python:现代编程的首选语言
Python:现代编程的首选语言
337 102
|
4月前
|
数据采集 机器学习/深度学习 算法框架/工具
Python:现代编程的瑞士军刀
Python:现代编程的瑞士军刀
363 104
|
4月前
|
人工智能 自然语言处理 算法框架/工具
Python:现代编程的首选语言
Python:现代编程的首选语言
291 103

推荐镜像

更多