牛客网Python入门103题练习|(04--列表(2))

⭐NP24 淘汰排名最后的学生

描述

某实验班实行末位淘汰制,期中考试需要淘汰末三位同学。现输入一行多个字符串表示按分数排名的该班级同学的名字(数量一定不少于三个),请你使用list将其封装为列表,然后使用三次pop函数,去掉末三位同学的名字,最后输出淘汰后的班级名字列表。

输入描述:

输入一行多个字符串表示同学名字,最少不少于3个名字,以空格间隔。

输出描述:

输出删除末三位后的完整列表。

示例1

输入:

NiuNiu Tom Tony Lucy

输出:

['NiuNiu']
lst = input().split()
print(lst[:-3])

⭐NP25 有序的列表

描述

创建一个依次包含字符串'P'、'y'、't'、'h'、'o'和'n'的列表my_list,先使用sorted函数对列表my_list进行临时排序,第一行输出排序后的完整列表,第二行输出原始的列表。再使用sort函数对列表my_list进行降序排序,第三行输出排序后完整的列表。

输入描述:

输出描述:

第一行输出临时排序后的列表;

第二行输出原始的列表;

第三行输出完成降序排序后的列表。

my_list = ['P','y','t','h','o','n']
nowlist = sorted(my_list)
print(nowlist)
print(my_list)
my_list.sort(reverse=True)
print(my_list)

⭐NP26 牛牛的反转列表

描述

牛牛有一个列表记录了各个朋友的喜欢的数字,num = [3, 5, 9, 0, 1, 9, 0, 3],请你帮他创建列表,然后使用reverse函数将列表反转输出。

输入描述:

输出描述:

第一行输出创建好的原始的列表,第二行输出反转后的列表。

lst = [3,5,9,0,1,9,0,3]
lst.reverse()
print(lst)

⭐NP27 朋友们的喜好

描述

牛牛有一个name = ['Niumei', 'YOLO', 'Niu Ke Le', 'Mona'] 记录了他最好的朋友们的名字,请创建一个二维列表friends,使用append函数将name添加到friends的第一行。

假如Niumei最喜欢吃pizza,最喜欢数字3,YOLO最喜欢吃fish, 最喜欢数字6,Niu Ke Le最喜欢吃potato,最喜欢数字0,Mona最喜欢吃beef,最喜欢数字3。

请再次创建一个列表food依次记录朋友们最喜欢吃的食物,并将创建好的列表使用append函数添加到friends的第二行;

然后再创建一个列表number依次记录朋友们最喜欢的颜色,并将创建好的列表使用append函数添加到friends的第三行。

这样friends就是一个二维list,使用print函数直接打印这个二维list。

输入描述:

输出描述:

[['Niumei', 'YOLO', 'Niu Ke Le', 'Mona'], ['pizza', 'fish', 'potato', 'beef'], [3, 6, 0, 3]]

name =  ['Niumei', 'YOLO', 'Niu Ke Le', 'Mona'] 
food = ['pizza', 'fish', 'potato', 'beef']
number =  [3, 6, 0, 3]
friends = []
friends.append(name)
friends.append(food)
friends.append(number)
print(friends)

⭐NP28 密码游戏

描述

牛牛和牛妹一起玩密码游戏,牛牛作为发送方会发送一个4位数的整数给牛妹,牛妹接收后将对密码进行破解。

破解方案如下:每位数字都要加上3再除以9的余数代替该位数字,然后将第1位和第3位数字交换,第2位和第4位数字交换。

请输出牛妹破解后的密码。

输入描述:

输入一个四位数的整数。

输出描述:

输出破解后的密码,以四位数的形式。

示例1

输入:

1234

输出:

6745

备注:

输入不会有前置0,但是输出要保持前置0
num = [(int(i)+3)%9 for i in input()]
print(f'{num[2]}{num[3]}{num[0]}{num[1]}')

⭐NP29 用列表实现栈

描述

栈是一种先进后出的数据结构,类似我们生活中挤电梯,最后进入的肯定是先出来,现我们用Python的列表来模拟栈。假设初始的列表为 stack = [1, 2, 3, 4, 5],请将其视作栈,使用pop函数弹出末尾两个元素,再使用append函数将输入元素加入到栈中,每次操作完成后都要输出整个列表。

输入描述:

输入要加入栈中的整数。

输出描述:

第一行输出第一次出栈后的列表;

第二行输出第二次出栈后的列表;

第三行输出元素入栈后的列表。

示例1

输入:

1

输出:

[1, 2, 3, 4]
[1, 2, 3]
[1, 2, 3, 1]

说明:
第一次弹出末尾元素5,第二次弹出末尾元素4,第三次加入新增元素1
stack = [1, 2, 3, 4, 5]
stack.pop()
print(stack)
stack.pop()
print(stack)
stack.append(int(input()))
print(stack)

⭐NP30 用列表实现队列

描述

队列是一种先进先出的数据结构,类似食堂排队打饭,先入队的元素当然要先出队,先请用Python列表模拟队列。现有一列表 queue = [1, 2, 3, 4, 5] 被视作队列,请使用pop函数连续两次取出队首元素,再使用append函数将输入元素添加到队尾,每次操作后都要输出完整的列表。

输入描述:

输入一个整数表示要添加到队列的元素。

输出描述:

第一行输出第一次取出队首后的列表;

第二行输出第二次取出队首后的列表;

第三行输出添加元素到队列后的列表。

示例1

输入:

8

输出:

[2, 3, 4, 5]
[3, 4, 5]
[3, 4, 5, 8]

说明:

第一次弹出队首元素1,第二次弹出队首元素2,第三次加入数字8到队尾
queue = [1, 2, 3, 4, 5]
queue.pop(0)
print(queue)
queue.pop(0)
print(queue)
queue.append(int(input()))
print(queue)

⭐NP31 团队分组

描述

创建一个列表group_list,其中依次包含字符串 'Tom', 'Allen', 'Jane', 'William', 'Tony' 表示这个小组成员的名字。现有三项任务需要他们去完成,根据不同任务的繁琐度和实际情况需要分别派2人、3人、2人来完成,他们决定通过对列表分片来分配任务。

使用print()语句和切片来打印列表group_list的前两个元素表示去做第一个任务的人的名字,
再使用print()语句和切片来打印列表group_list的中间三个元素表示去做第二个任务的人的名字,
再使用print()语句和切片来打印列表group_list的后两个元素表示去做第三个任务的人的名字。

输入描述:

输出描述:

按照题意输出

['Tom', 'Allen']

['Allen', 'Jane', 'William']
['William', 'Tony']

group_list = [ 'Tom', 'Allen', 'Jane', 'William', 'Tony']
print(f'{group_list[:2]}')
print(f'{group_list[1:4]}')
print(f'{group_list[3:]}')

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

玥轩_521

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值