介紹。 我有一個C++應用程序,我使用SWIG來啓動GetObjects
和PutObjects
在python代碼中定義的方法。 GetObjects
方法打開JSON格式的文件,從那裏獲取對象並將它們返回給C++應用程序。雖然PutObjects
方法從C++應用程序獲取對象,但打開JSON格式化文件進行寫入並將其存儲在那裏。Python代碼中的SwigPyObject和JSON通信
代碼很常見,它使用MyJSONDecode和MyJSONEncode函數在python對象和json字典之間進行交互。
現在的問題。 Swig將MyObject
C++類轉換爲位於abc
模塊中的稱爲MyObject
的python類。我使用import abc
聲明在代碼中使用它,如abc.MyObject()
。 abc.MyObject
是SwigPyObject
,它沒有字典本身(__dict__
成員)。
所以我不能遍歷MyObject.__dict__
裏面的MyJSONEncode函數來建立一個字典,應該由該函數返回,因此創建一個JSON格式。
但MyObject有屬性,例如url或name等等。我如何迭代屬性?
如果需要,我會爲您提供代碼。請讓我知道。總的來說,我希望我的問題能夠得到理解。
等待一種迴應:)