【发布时间】:2021-03-16 12:19:46
【问题描述】:
我有一个显示奇怪行为的简单函数。我已经搜索了解释,但找不到任何解释。
def myfunc(frame):
lol = []
for i in range(frame.shape[0]):
if frame.iloc[i,3] == 3:
lol.append(frame.iloc[i,7])
return np.asarray(lol,dtype=np.int32)
print('before')
x = myfunc(x)
print('after')
以上代码的结果是
之前
内核死了
def myfunc(frame):
lol = []
for i in range(frame.shape[0]):
if frame.iloc[i,3] == 3:
lol.append(frame.iloc[i,7])
print('myfunc')
return np.asarray(lol,dtype=np.int32)
print('before')
x = myfunc(x)
print('after')
然而,只需添加一个打印语句即可
之前
我的函数
之后
内核死了
打印语句是唯一的区别,我已经对此进行了测试,也许有 50 次。忽略我的其他问题(内核死了),我不知道为什么会这样。如果有任何见解,我将不胜感激。
【问题讨论】:
-
什么是 x? ....
-
对不起,我以为很清楚。 x 是一个熊猫数据框。
标签: python pandas tensorflow spyder