欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

4、列表、元组、字符串

程序员文章站 2022-03-08 14:05:57
...

列表

1、列表操作练习

列表lst 内容如下

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

请写程序完成下列操作:

  1. 在列表的末尾增加元素15
  2. 在列表的中间位置插入元素20
  3. 将列表[2, 5, 6]合并到lst中
  4. 移除列表中索引为3的元素
  5. 翻转列表里的所有元素
  6. 对列表里的元素进行排序,从小到大一次,从大到小一次
lst = [2, 5, 6, 7, 8, 9, 2, 9, 9]

# 1、
lst.append(15)
# 2、
length = len(lst)
lst.insert(length//2, 20)
# 3、
[lst[:3]] + lst[3:]
# 4、
lst.pop(3)
# 5、
lst.reverse()
lst
# 6、
lst.pop()
for i in [2, 5, 6]:
    lst.append(i)
lst.sort()
lst.sort(reverse=True)

2、修改列表

问题描述:

lst = [1, [4, 6], True]

请将列表里所有数字修改成原来的两倍

lst = [1, [4, 6], True]
lst1 = []
lst2 = []
for i in lst:
    if type(i) != list:
        i *= 2
        lst1.append(i)
    else:
        for elem in i:
            elem *= 2
            lst2.append(elem)
        lst1.append(lst2)
        
lst1
[2, [8, 12], 2]

3、leetcode 852题 山脉数组的峰顶索引

如果一个数组k符合下面两个属性,则称之为山脉数组

数组的长度大于等于3

存在 ???? , ???? >0 且 ????<len(????)−1 , 使得
k[0]<k[1]<…<k[i−1]<k[j]>k[i+1]…>k[len(k)−1]

这个 ???? 就是顶峰索引。

现在,给定一个山脉数组,求顶峰索引。

示例:

输入:[1, 3, 4, 5, 3]

输出:True

输入:[1, 2, 4, 6, 4, 5]

输出:False

lst = [1, 3, 4, 5, 3]
lst1 = [1, 2, 4, 6, 4, 5]

def peak(lst):
    len_lst = len(lst)
    if len_lst < 3:
        print('数组长度应该大于等于3')
        return
    max_e = max(lst)
    if lst.count(max_e) != 1:
        return print('False')
    
    max_index = lst.index(max_e)
    len_l, len_r = len(lst[:max_index]), len(lst[(max_index+1):])
    if len_l == 1:
        pass
    else:
        for i in range(len_l-1):
            if lst[i] >= lst[i+1]:
                return print('False')  
            
    if len_r == 1:
        pass
    else:
        for i in range(max_index+1, len(lst)-1):
            if lst[i] <= lst[i+1]:
                return print('False')
                    
    print('True')
    
peak(lst)
peak(lst1)
True
False

元组

1、元组概念

写出下面代码的执行结果和最终结果的类型

(1, 2)*2
(1, )*2
(1)*2

写出下面代码的执行结果和最终结果的类型

(1, 2)*2 # (1, 2, 1, 2)
(1, )*2 # (1, 1)
(1)*2 # 2

2、拆包过程是什么?

a, b = 1, 2

上述过程属于拆包吗?

可迭代对象拆包时,怎么赋值给占位符?

*args

字符串

相关标签: python