gpt4 book ai didi

python - 为什么Python3会执行一段被注释掉的代码?

转载 作者:行者123 更新时间:2023-12-05 08:38:24 25 4
gpt4 key购买 nike

在使用 Python 8 年多之后,我今天遇到了 Python 3.8 的问题:它执行了我注释掉的代码。

我能够打断它,因为它正在通过本应被注释阻止的代码路径以获取此屏幕截图:

enter image description here

正如函数名称所示,所讨论的操作回滚起来有些耗时,我很想知道发生了什么以避免将来处理它。

我目前最好的解释是,由于代码在远程机器上运行,无论出于何种原因,注释在代码启动时都没有通过,但对堆栈跟踪进行了注释。

有没有人有过类似的经历或知道可能发生了什么?

最佳答案

我从评论中证实了我的假设,文件如下:

import time

def dont_run():
raise Exception("oh no i ran it")

time.sleep(10)

dont_run()

我保存了那个文件,然后运行它。当它运行时我注释掉最后一行并重新保存文件,然后我得到了这个错误:

$ py main.py
Traceback (most recent call last):
File "main.py", line 10, in <module>
# dont_run()
File "main.py", line 6, in dont_run
raise Exception("oh no i ran it")
Exception: oh no i ran it

所以我认为这里一定发生了什么,你在文件保存到磁盘之前运行了文件(可能是两个网络请求之间的竞争,你运气不好)。

关于python - 为什么Python3会执行一段被注释掉的代码?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62931692/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com