开发者社区> 问答> 正文

python循环判定不成立了还在一直循环,将不一样的值作参数输入函数后却还是原来的值?

python循环判定不成立了还在一直循环,将不一样的值作参数输入函数后却还是原来的值?

展开
收起
游客ahv54x37wvm7u 2021-10-31 11:55:57 490 0
1 条回答
写回答
取消 提交回答
  • python 中,函数内部修改的形参,并不会改变函数外部实参的值。 以题目中例子为例,首次满足xn==xn2和yn==yn2时,自然不会执行while循环内的huisu函数,于是退出huisu(定义这一层huisu为A),也就是退出到该层嵌套函数,此时,到达一个外层huisu(定义这一层huisu为B),此时在while循环中,这个时候,xn2是85,yn2就是447。 说白了,就是A中的yn2虽然为448,但B中的yn2始终是447,再外一层的huisu两个数字就分别是85和446,以此类推。 于是乎,此时,程序会一直在B中执行while循环,不断输出同样的数字,永远不会退出。

    2021-10-31 11:56:20
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
From Python Scikit-Learn to Sc 立即下载
Data Pre-Processing in Python: 立即下载
双剑合璧-Python和大数据计算平台的结合 立即下载