Python第1关:列表的属性与方法

img


初始化一个空列表,输入一个正整数n。
接下来,你将被要求输入n个指令,每得到一个指令后,根据指令的字符串进行对应的功能操作。
指令形式及对应功能如下:


# 初始化一个空列表
lst = []

# 输入一个正整数n
n = int(input("请输入一个正整数n:"))

# 循环n次,每次输入一个指令
for _ in range(n):
    # 输入一个指令,按空格分割
    cmd = input("请输入一个指令:").split()
    # 根据指令的第一个单词进行对应的操作
    if cmd[0] == "insert":
        # 在第i个位置插入整数e,注意索引从0开始
        i = int(cmd[1])
        e = int(cmd[2])
        lst.insert(i, e)
    elif cmd[0] == "print":
        # 输出列表
        print(lst)
    elif cmd[0] == "remove":
        # 删除第一次出现的整数e
        e = int(cmd[1])
        lst.remove(e)
    elif cmd[0] == "append":
        # 在列表的末尾插入整数e
        e = int(cmd[1])
        lst.append(e)
    elif cmd[0] == "sort":
        # 按默认规则排序
        lst.sort()
    elif cmd[0] == "pop":
        # 弹出列表最后一个元素
        lst.pop()
    elif cmd[0] == "reverse":
        # 列表元素逆序
        lst.reverse()
    else:
        # 无效的指令,输出提示信息
        print("无效的指令,请重新输入")
n = int(input())
lst = list()
for _ in range(n):
    cmd = input().split()
    if len(cmd) == 3:
        lst.insert(int(cmd[1]), int(cmd[2]))
    elif len(cmd) == 2:
        eval(f"lst.{cmd[0]}({cmd[1]})")
    elif cmd[0] == "print":
        print(lst)
    else:
        eval(f"lst.{cmd[0]}()")
不知道你这个问题是否已经解决, 如果还没有解决的话:

如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^