【发布时间】:2018-10-24 07:13:53
【问题描述】:
我的一个特定功能/命令开始出现异常行为。 Remove items from a nested list based on comparing values obtained from another nested list
a = [[1,2,3,4,5],[3,4,5,6,7,8,9],[5],[1,2,3,6,7,8,9]]
b = [[1,4],[6,9]]
print ([[i for i in s if not any(l <= i <= h for l, h in b)] for s in a])
预期输出:
[[5], [5], [5], []]
IDLE 和 codeskulptor (https://py3.codeskulptor.org/) 中的输出:
[[5], [5], [5], []]
Spyder IDE(在 Ipython 控制台中)的输出是
[[], [], [], []]
代码在昨天 EoD 之前运行良好。我今天再次启动我的笔记本电脑并开始出现这种差异。我的 python 安装是通过 Anaconda 安装的。 Python 3.6.6 版本(IDLE 和 Spyder 都显示) Spyder 版本是 3.3.1
作为最后的手段,我曾多次尝试重新启动笔记本电脑,但似乎找不到造成这种差异的原因
【问题讨论】:
-
重启 IPython 内核。在 IPython 控制台中单击并按
ctrl+. -
您的整个代码在其他地方一定有所不同。
-
@roganjosh 试过了。不能解决问题。
-
嗯,它在 Spyder 3.2.4 中对我来说工作正常。我根本无法复制。您可能需要在他们的 github 上提出它。
标签: python python-3.x spyder