【发布时间】:2018-11-24 04:02:25
【问题描述】:
我很惊讶,也许有人可以解释发生了什么......
当我运行这个非常简单的例子时:
df = pd.DataFrame(columns=['A','B','C'])
results = pd.DataFrame(columns=df.columns)
for i, col in enumerate(df):
print('.....'+col)
result = [print(col) for i in range(2)]
结果是(第一次未知col):
.....A
A
A
.....B
A
A
.....C
A
A
但我真正期待的是:
.....A
A
A
.....B
B
B
.....C
C
C
发生了什么事??
【问题讨论】:
-
我对其进行测试并在 pandas 0.23.0 中获得预期的输出
-
简短的回答是不要在列表理解中使用
print。有关详细信息,请参阅标记的重复项。 -
按预期工作
-
@jpp 我不同意这个副本。这可能是与 Python 2 的列表解析泄漏变量有关的问题。
-
@user2285236,但该帖子标记为
[python-3.x].. 不过,如果您认为这种行为值得解释,请随时重新打开。
标签: python-3.x pandas