2
我想編寫一個Python包來包裝我正在寫的一個新的C庫 - 說實話,這都是一種學習練習。我想打電話給圖書館spam
(當然),C庫就是這樣構建的。是否可以在同一個命名空間中混合使用C和Python?
Spam/
lib/
foo.c
Makefile
libspam.a /* Generated by Makefile */
libspam.so /* Generated by Makefile */
假設foo.c的提供了一個單一的公共職能foo(char * bar)
。同時,我想提供一個Python包。我想提供foo
和另一個函數的包裝,在相同的命名空間下。 safe_foo
是Python函數,它對bar
執行一些檢查,然後調用foo
。他們可以這樣調用
import spam
file='hello.txt'
foo(file)
safe_foo(file)
這可能嗎?
類似的情況是我開發了一個Python包,然後希望在不中斷API的情況下將一個函數重新實現爲C函數。
你也許能看到我有點新的Python包裝...