# 初始化一个空列表
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]}()")
不知道你这个问题是否已经解决, 如果还没有解决的话:使用 for 循环,并定义一个 num=1 的变量,根据这个变量一个一个阶乘
def cal_one(n):
if n == 1:return 1 # 如果n是1的话,直接返回1即可,1的阶乘还是1
elif n ==0:return 0 # 同理,直接返回0
num = 1
for i in list(range(1,n+1)):
num *= i
return num
print(cal_one(7))