Pandas 了解Jupyter笔记本电脑的pd.DataFrame\uuuu repr\uuuuuu\uuuu行为 激励范例
最近,我发现自己在尝试我的OOP,对于我当前的应用程序,假设我制作了一个Pandas 了解Jupyter笔记本电脑的pd.DataFrame\uuuu repr\uuuuuu\uuuu行为 激励范例,pandas,dataframe,oop,jupyter-lab,repr,Pandas,Dataframe,Oop,Jupyter Lab,Repr,最近,我发现自己在尝试我的OOP,对于我当前的应用程序,假设我制作了一个Simulator()类 class Simulator: def __init__(self): self.result_df = pd.DataFrame(data=None, columns=['trial', 'score']) def run(self): trial, score = 1, 2 # do something... self.res
Simulator()
类
class Simulator:
def __init__(self):
self.result_df = pd.DataFrame(data=None, columns=['trial', 'score'])
def run(self):
trial, score = 1, 2 # do something...
self.result_df = self.result_df.append({'trial': trial, 'score': score}, ignore_index=True)
现在,我想做的是能够编写一些辅助代码,利用我喜欢的笔记本电脑的display()
功能
def __repr__(self):
display('Top 5 scores')
display(self.result_df.sort_values('score', ascending=False).head(5))
这样我就可以像
sim = Simulator()
[sim.run() for _ in range(100)]
sim
并获得“前5名分数”的打印输出以及格式良好的表格,其中包含前5名分数
但是,上面的代码不够用,因为我遇到了一个错误,它读取TypeError:\uuuu repr\uuu。返回了非字符串(type NoneType)
。因此,在我弄清楚如何正确定义这个\uu repr\uu()
之前,我的两个解决方法是
str(self.result\u df)
,但现在我只关注文本表示,而不是花哨的裤子渲染pandas
codebase确实比我所研究过的任何东西都要复杂。我从一开始就把自己搞糊涂了,觉得有必要在这里问一下,是否有人能帮我弄清楚如何:
\uuu repr\uuuu()
,使其工作相同