我有一個我想從Python使用的API。該API包含用#define實現的標誌和枚舉。ctypes是否提供枚舉和標誌的任何東西?
// it's just almost C so don't bother adding the typedef and parenthesis diarrhea here.
routine(API_SOMETHING | API_OTHERTHING)
stuff = getflags()
? stuff & API_SOMETHING
action(API_INTERESTING)
mode = getaction()
? mode == INTERESTING
如果無視一切,除了現在枚舉和標誌一樣,我應該綁定該翻譯成:
routine(["something", "otherthing"])
stuff = getflags()
if 'something' in stuff
action('interesting')
mode = getaction()
if mode == 'interesting'
是否ctypes的提供機制來做到這一點直出?如果沒有,那麼只需告訴你用於處理Python綁定中的標誌和枚舉的'通常'工具。
我確定現在,由於'你已經閱讀過文檔',你知道除了所有其他解決方案之外,你還可以使用'property':http://docs.python.org/library/ functions.html#屬性 – 2010-06-23 18:03:45