class_docstr: A data frame class, with only the methods required by the interchange
  protocol defined.
  Instances of this (private) class are returned from
  ``pd.DataFrame.__dataframe__`` as objects with the methods and
  attributes defined on this class.
class_docstr_tok: ["A","data","frame","class",",","with","only","the","methods","required","by","the","interchange","protocol","defined",".","Instances","of","this","(","private",")","class","are","returned","from","``","pd.DataFrame.__dataframe__","``","as","objects","with","the","methods","and","attributes","defined","on","this","class","."]
code: def num_rows(self) -> int:
      return len(self._df)
  
file_path: pandas/pandas/core/interchange/dataframe.py
imports: from __future__ import annotations
  from collections import abc
  from typing import TYPE_CHECKING
  from pandas.core.interchange.column import PandasColumn
  from pandas.core.interchange.dataframe_protocol import DataFrame
label_desc: Use image node_id 5 for calling the PandasDataFrameXchg obj's underlying member method code with example usage: obj.num_rows() and returns: len