python - 带有 try/except 的函数不返回!在 python 3

标签 python python-3.x exception function try-except

我尝试编写一个函数来尝试变量“a”和 26 的 GCD 是否为 1,如果不是,则将变量 pgcd 返回为 True 以退出“While”。但是该函数不会更改 pgcd 的值,它保持为 False,因此它停留在“While”中。我不明白为什么值(value)没有改变。你能帮帮我吗:)

def couplepgcd(pgcd):
    try:
        assert gcd(a,26) == 1 
        pgcd = True
    except Exception:
        print("a et 26 doivent être premiers entre eux !")
    return pgcd

...

pgcd = False
while pgcd == False:
    [...]
    couplepgcd(pgcd)

最佳答案

我认为这是因为你没有保存 couplepgcd 函数的结果。

pgcd = False
while pgcd == False:
    [...]
    pgcd = couplepgcd(pgcd)

关于python - 带有 try/except 的函数不返回!在 python 3,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19731241/

相关文章:

python - Python 中的仿函数与函数闭包

android m Preview 3 应用程序在权限 CONNECTIVITY_INTERVAL 的情况下崩溃

python - 使用 django 显示特定帖子

python - While 循环范围(0,5)与 ran = ran[ :-1]; ran ! = [] 始终为真

python - 我应该采取措施确保 Django 应用程序在编写之前可以扩展吗?

python - 如何使用类外的函数进行循环

hibernate - 使用Hibernate/GORM导致java.sql.BatchUpdateException错误

c# - 异常在 try/catch 上下文中丢失了部分堆栈跟踪

javascript - 相当于 JavaScript 中 Python 的 KeyError 异常?

Python:通过公钥 "not a valid RSA"进行 Paramiko 身份验证