大規模なグリッドデータを格納するカスタムwxPythonテーブルがあります。 wikiとwxPythonのデモで実装しました。それを機能させるために、私はいくつかのGridTableBaseメソッドを上書きします。wxPythonカスタムテーブルの列名を設定
class HugeTable(gridlib.GridTableBase):
....
def GetColLabelValue(self, col):
"""
Get col label from dataframe
"""
if len(self.dataframe):
return self.dataframe.columns[col]
return ''
私は次のコードでSetColLabelValueを上書きしています:私はGetColLabelは次のようになりますので、パンダのデータフレームに私のグリッドデータを格納しています。このコードは、列名を変更するために働く
def SetColLabelValue(self, col, value):
"""
Set col label value in dataframe
"""
if len(self.dataframe):
col_name = str(self.dataframe.columns[col])
self.dataframe.rename(columns={col_name: str(value)}, inplace=True)
return ''
return ''
が、このエラーが発生します:
TypeError: invalid result from HugeTable.SetColLabelValue()
このエラーが発生している理由はわかりません。
私には2つの質問があります。 1.どのようなリターン値が期待されるのかをどのようにして知ることができますか? 2.このエラーを防ぐにはどうしたらいいですか?
バージョンノート:私はOS X上で
ドキュメンテーションはここにあります:https://wxpython.org/Phoenix/docs/html/index.htmlあなたの場合、ドキュメントは戻り値について何も言わないので、おそらくは「None」である必要があります –
私は試しましたこのエラーを作成します: 'TypeError:HugeTable.GetValue()からの無効な結果、このタイプのC/C++ wxStringにNoneTypeを変換できません。 ' –
ああ、私は間違っていました。それは動作します!ありがとう –