[英]How do I check input variable validity from a Python extension?
我有一個用C ++編寫的Python擴展,期望將bytearray作為第一個參數。 它可以正常工作,但是如果我從Python傳遞其他內容(例如字符串或數字),則會出現分段錯誤。 如何檢查輸入是否確實是字節數組,然后在其他情況下引發異常?
這應該會有所幫助: http : //docs.python.org/2/faq/extending.html#id8
為了測試的對象的類型,首先要確保它不是
NULL
,然后用PyString_Check()
PyTuple_Check()
PyList_Check()
等等。
具體來說,您看起來像這樣: http : //docs.python.org/2/c-api/bytearray.html#type-check-macros
int PyByteArray_Check(PyObject *o)
如果對象o是字節數組對象或字節數組類型的子類型的實例,則返回true。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.