Skip to main content
 首页 » 编程设计

python之如何在 Python 中使用循环返回值

2025年05月04日15hnrainll

我正在尝试学习基本的 Python,但我似乎无法使用 while 循环返回值。我正在从我正在阅读的指南中复制语法,但是当我运行它时它似乎不起作用。我不确定我可能有不同的版本。

不管怎样,我只是在胡闹,得到了这段代码

def fact(x): 
 count = 1 
 sum = 0 
 while count <= x: 
     sum =  count * sum 
     count + 1 
 else: 
     return sum    

我什至不知道这是否正确计算了阶乘,我不在乎,我只是想让它返回一个值。怎么了?为什么我不能使用返回?当我用

替换 return 时,我不确定出了什么问题
       display, 

还是不行。

请您参考如下方法:

在您的 while 循环中,您实际上并未将 count 设置为 count + 1 - 您只是在声明 count + 1,它不会重新分配变量:

In [1]: count = 1 
 
In [2]: count + 1 
Out[2]: 2 
 
In [3]: count 
Out[3]: 1 

你会想要使用像count += 1这样的东西。此外,您将遇到以下问题:

sum =  count * sum 

由于它最初为 0,因此无论计数是多少,您每次都将其重置为 0。如果仍然适合您,您可以尝试将其设置为 1,但您可能需要仔细考虑您要尝试做什么。使用了带有 while 的 else 语句,但在这里您可以在满足 while 条件后退出 block 并以这种方式返回变量.