用while循环python写阶乘


问题内容

我是新手,对Python不太了解。有人知道您如何在while循环中编写阶乘吗?

我可以在if / elif else语句中做到这一点:

num = ...
factorial = 1

if num < 0:
   print("must be positive")
elif num == 0:
   print("factorial = 1")
else:
   for i in range(1,num + 1):
       factorial = factorial*i
   print(num, factorial)

但是我想用while循环(无功能)来做到这一点。


问题答案:
while num > 1:
    factorial = factorial * num
    num = num - 1