• Python150题day05


    ⑤合并字符串

    str1=“1,2,3”

    str2=“4,5,6”

    请将str1合并到str2的末尾,并思考这个过程中,是否产生了新的字符串

    解答:

    str1 += str2

    这个过程中,产生的新的字符串,字符串是不可变对象,从字面意义上理解,似乎str1的内容发生变化了, 但本质上是产生了新的字符串并赋值给str1,print(str1),合并前后的内存地址是不一样的。

    ⑥统计练习

    lst = [2,5,6,7,8,9,2,9,9]

    请写程序完成下列题目:

    1.找出列表里的最大值

    2.找出列表里的最小值

    3.找出列表里最大值的个数

    4.计算列表里所有元素的和

    5.计算列表里元素的平均值

    6.计算列表的长度

    7.找出元素6在列表中的索引

    解答:

    1. max(lst)

    2. min(lst)

    3. lst.count(max(lst))

    4. sum(lst)

    5. sum(lst)/float(len(lst))

    6. len(lst)

    7. lst.index(6)

    第五题解析:

    • sum(lst):这个部分是用来计算列表 lst 中所有元素的总和。
    • len(lst):这个部分是用来计算列表 lst 的长度,即列表中元素的个数。
    • float(len(lst)):这个部分是将列表的长度转换为浮点数类型,以确保在进行除法运算时得到的结果是浮点数。
    • sum(lst)/float(len(lst)):这个部分将列表的总和除以列表的长度,得到的结果就是列表元素的平均值。

    这部分题考察的是对内置函数的理解和应用

    下面的题目不写代码,仅凭思考来回答

    1.lst[2:4]的值是什么

    2.lst[1: -3]的值是什么

    3.lst[-5]的值是什么

    4.lst[:-4] 的值是什么

    5.lst[-4:] 的值是什么

    解答:

    1. [6, 7]

    2. [5, 6, 7, 8, 9]

    3. 8

    4. [2, 5, 6, 7, 8]

    5. [9, 2, 9, 9]

    列表的切片操作,一定要记住左闭右开

    注意第三和第四个的区别,少一个符号的区别很大

    ⑦列表操作练习

    lst = [2, 5, 6, 7, 8, 9, 2, 9, 9]

    请写程序完成下列题目:

    请写程序完成下列操作
    1.在列表的未尾增加元素15
    2.在列表的中间位置插入元素20

    3.将列表[2,5,6]合并到Ist中
    4.移除列表中索引为3的元素
    5.翻转列表里的所有元素
    6.对列表里的元素进行排序,从小到大一次,从大到小一次

    解答:

    1. lst.append(15)

    2. lst.insert(len(lst)//2, 20)

    3. lst.extend([2, 5, 6])

    4. lst.remove(lst[3])

    5. lst = lst[::-1]

    6. lst.sort()  lst.sort(reverse=True)

    第二题解析:

    len(lst)//2 表示列表 lst 的长度除以2,即中间位置的索引。然后,lst.insert() 方法用于在指定的索引位置插入一个元素,这里的索引位置是中间位置,元素是 20。这样,执行完这段代码后,列表 lst 中就会在中间位置插入一个元素 20。

    第五题解析:

    lst[::-1] 是 Python 中的切片操作,用于创建一个与原列表 lst 具有相同元素但顺序相反的新列表。具体来说:

    • [::-1]:这部分表示切片操作,其中的 :: 表示从列表的起始位置到结束位置,而 -1 表示步长为 -1,即逆序遍历列表。

    通过将列表 lst 进行切片操作 [::-1],代码将创建一个新的列表,其中的元素顺序与原列表 lst 相反。

    例如,如果原列表 lst 是 [1, 2, 3, 4, 5],那么 lst[::-1] 将返回一个新的列表 [5, 4, 3, 2, 1],即原列表的逆序。

    所以,lst = lst[::-1] 这段代码的作用是将列表 lst 中的元素顺序反转,并将结果保存回原列表 lst 中。

    第六题解析:

    lst.sort() 是一个用于列表排序的方法。它会按照默认的升序方式对列表进行排序。例如,如果列表 lst 是 [3, 1, 2],那么调用 lst.sort() 之后,列表 lst 将变为 [1, 2, 3]

    lst.sort(reverse=True) 是对列表进行降序排序的方法。它会按照降序的方式对列表进行排序。例如,如果列表 lst 是 [3, 1, 2],那么调用 lst.sort(reverse=True) 之后,列表 lst 将变为 [3, 2, 1]

    需要注意的是,这两个方法会直接修改原始列表,而不会返回一个新的排序后的列表。如果你想要获得一个新的排序后的列表,可以使用 sorted() 函数。例如,sorted_lst = sorted(lst) 会返回一个新的已排序列表,而不会修改原始列表 lst

    ⑧复杂列表练习

    lst = [1, 4, 5, [1, 3, 5, 6, [8, 9, 10, 12]]]

    不写代码,仅凭思考来回答

    1.列表Ist的长度是多少
    2.列表Ist中有几个元素
    3.lst[1] 的数据类型是什么
    4.lst[3]的数据类型是什么
    5.lst[3][4] 的值是什么
    6.如果才能访问到 9 这个值
    7.执行lst[3][4].append([5,6])后,列表lst的内容是什么,手写出来
    8.lst[-1][-1][-2]的值是什么
    9.lst[-2]的值是什么
    10.len(lst[-1]) 的值是什么
    11.len(lst[-1][-1])的值是什么
    12.lst[-1][1:3] 的值是什么
    13.lst[-1][-1][1:-2]的值是什么

    解答:

    第1题和第2题其实是一个意思,原本统计列表里数据个数不是什么难事,可一旦出现了嵌套列表的情况,有人就分不清了,列表里的数据是以逗号分隔的,lst[3] 是一个列表,其余都是int类型数据,因此lst的长度是4
    第3题,lst[1] = 4,是int类型数据
    第4题,lst[3] 的数据类型是列表
    第5题,lst[3]的值是[1,3,5,6,[8,9,10,12]],仍然是一个列表,其索引为4的数据是[8,9,10,12],是列表
    第6题,lst[3][4][1]第7题,[1,4,5,[1,3,5,6,[8,9,10,12,[5,6]]]],参考5,6两个题目的解答第8题,Ist[-1]的值是[1,3,5,6,[8,9,10,12]], 再次取索引为-1的数据为[8,9,10,12],取索引为-2的数据为10
    第9题,5
    第10题,5
    第11题,4
    第12题,[3,5], lst[-1]的值是[1,3,5,6,[8,9,10,12]]第13题,[9], lst[-1][-1]的值是[8,9,10,12],切片起始位置索引是1,值为9,结束位置是-2,值为10,由于左闭右开,最终结果是[9]

  • 相关阅读:
    【Python 基础】求n的阶乘(递归法) || 动态规划 求 n项斐波那契数列(前n项) || 递归法 求 “斐波那契数列” 的 第n项
    Django、Nginx、uWSGI详解及配置示例
    Java --- JVM程序计数器(PC寄存器)
    推荐3款卓越的 .NET 开源搜索组件库
    Assigning a Static IP Address to a WSL2 Distribution
    CF837G Functions On The Segments
    SoloX:Android和iOS性能数据的实时采集工具
    【iOS自动化测试】第三章:框架设计
    用好CompletableFuture类,性能起飞
    Spring Boot框架
  • 原文地址:https://blog.csdn.net/qq_62928039/article/details/132984446