4、列表、元组、字符串
程序员文章站
2022-03-08 14:05:57
...
列表、元组、字符串
列表
1、列表操作练习
列表lst 内容如下
lst = [2, 5, 6, 7, 8, 9, 2, 9, 9]
请写程序完成下列操作:
- 在列表的末尾增加元素15
- 在列表的中间位置插入元素20
- 将列表[2, 5, 6]合并到lst中
- 移除列表中索引为3的元素
- 翻转列表里的所有元素
- 对列表里的元素进行排序,从小到大一次,从大到小一次
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
字符串
上一篇: ubuntu20.04创建新用户
下一篇: 使用JQ判断单选框或多选框是否选中