Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我不小心尝试在 numpy 中创建一个 200,000 x 200,000 的数组。Control-C 似乎没有中断操作。有没有办法在不简单地杀死 python 会话的情况下停止数组创建?
很不幸的是,不行。Python(和 MatLab,我使用的唯一其他分析包)在当前操作(未运行)完成之前不会检测到用户中断。
这不起作用的原因是 numpy 有很大一部分是用 C 编写的。
当 Python 开始执行编译函数时,Python 信号处理实际上会暂停,直到编译代码的执行完成。
这对您的交互式 Python 会话来说是个坏消息,但除了等待不可避免的 OutOfMemoryError 或终止会话之外,您无能为力。