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


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

    一、前言

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

    二、我的环境

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

    三、实验目的与要求

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

    四、实验任务

    1、程序填空

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

    import random
    ls = []
    random.seed(15)
    for i in range(20):
        a = random.randint(0, 100)
        ls.append(a)
    print(ls)
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7

    它运行的结果是:

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

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

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

    它运行的结果是:

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

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

    def mean(numList):
        s = 0.0
        for num in numList:
            s = s + num
        return s
    ls = eval(input())
    print("平均值:", mean(ls)/len(ls))
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7

    它运行的结果是:

    10,7,4,8,6
    平均值: 7.0
    
    • 1
    • 2

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

    ls = []
    while True:
        s = input("")
        if s == "E":
            break
        for c in s:
            if c == "E":
                break
        ls.append(s)
    print(ls)
    print("程序退出")
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11

    它运行的结果是:

    zhang
    wang
    li
    zhao
    liu
    E
    ['zhang', 'wang', 'li', 'zhao', 'liu']
    程序退出
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8

    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

    在这里插入图片描述

    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])
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13

    它运行的结果是:

    进行升序排序
    [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]
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10

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

    car_nums=[‘苏 GA0001’, ‘苏 GA00X9’, ‘苏 GA0027’]

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

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

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

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

    在这里插入图片描述

    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)
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16

    它运行的结果是:

    现有新来了一辆车 '苏 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']
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11

    五、最后我想说

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

  • 相关阅读:
    SPSS一对多的数据怎么进行相关分析?
    图文并茂quasar2.6+vue3+ts+vite创建项目并引入mockjs,mockjs 拦截ajax请求的原理是什么,quasar为什么要使用boot?
    #django基本常识01#
    2-3.基金的估值,费用与会计
    「纯干货」接口项目/接口框架通通都有,都给你
    计算机毕业设计JAVA网上商城购物系统mybatis+源码+调试部署+系统+数据库+lw
    Android修行手册 - TabLayout全解析 - 小红点和自定义样式
    LeetCode --- 1967. Number of Strings That Appear as Substrings in Word 解题报告
    JAVA关于Spring 面试题汇总
    React报错之React Hook 'useEffect' is called in function
  • 原文地址:https://blog.csdn.net/qq_52417436/article/details/126917976