python-extensions

    0熱度

    1回答

    我使用64位python 2.7工作在64位窗口上,我試圖編譯我的第一個用於python的C++擴展。 起初我試圖使用mingw但遇到了很多鏈接器錯誤,所以現在我使用C++ for python 2.7與windows7 SDK。 它應是一個對象存儲一個C++ map,map<tuple<int,int,int>,pen>和map<int,pen>,其中pen是一個C++結構兩次。 類(Tacti

    9熱度

    3回答

    我想在C中創建一個擴展Python的函數,它可以接受float或int類型的輸入。所以基本上,我想f(5)和f(5.5)是可以接受的輸入。 我不認爲我可以使用if (!PyArg_ParseTuple(args, "i", $value)),因爲它只需要int或只浮點數。 如何讓我的功能允許輸入是整數或浮點數? 我想知道如果我應該只需要輸入並將其放入PyObject,並以某種方式採取PyObjec

    0熱度

    3回答

    無論發生的異常的類型如何,我都希望我的程序退出。但是,根據異常的類型,我想記錄不同的錯誤消息。我怎樣才能實現這個少代碼重複?以下是代碼我目前使用的: try: <code> except Exception1: self.logger.exception('Error message 1') self.logger.error('Aborting')

    0熱度

    1回答

    我需要從csv文件或Excel表單(包含行和列)將數據加載到二維python字典中。例如,如果在一個Excel工作表中的數據是這樣的: name age gender location 1 Jim 18 male China 2 Ross 18 male China 3 Cara 19 female Japan 4 Ted 18 male China 然後輸出蟒蛇字典應該是這樣的: d

    -1熱度

    1回答

    我有一個C++項目,它使用了包括std :: make_unique在內的一些C++ 14功能。 該項目編譯和運行良好,並做了一段時間,但是,現在我想添加一個python界面,我有一些麻煩。 在我的Python擴展我試圖聲明我的C++類作爲唯一使用: #include <memory> ... typedef struct { PyObject_HEAD std::uniq

    1熱度

    1回答

    我一直在努力研究Python C/C++擴展,除了一個方法添加了兩個名爲「int_obj」的結構,並且返回一個新的結構稱爲「add_int_obj」。 到目前爲止,該擴展只有兩種方法,「價值」完美地工作,「添加」,這是有問題的方法。 我用下面的test.py腳本測試它: import intobj val1 = intobj.IntObj(3) val2 = intobj.IntObj(5)

    1熱度

    1回答

    現在我有一個圖像處理算法,大約100 Python左右。使用numpy,PIL和scipy大約需要500ms。我期望更快地獲得它,而且由於實際的算法看起來非常優化,所以我想知道是否使用不同的方法(如Cython)會改善時間。我相信,我有幾個不同的事情,我可以這樣做: 使用用Cython揭露C庫到Python的相關部分。 使用ctypes的只是用C編寫的一切,但仍然有它純Python(不計入這在所有

    -1熱度

    1回答

    我有這個C SDK,我正在創建一個Python擴展。 C SDK文檔說,它預計在其工作目錄中有一個ffmpeg可執行文件。我目前的項目結構是: my-extension/ include/ sdk-file.h sdk-file-2.h lib/ sdk-lib.so sdk-lib2.so src/ my-

    0熱度

    1回答

    我想寫一個python擴展模塊,其中的一些功能是curried,但我不太確定如何去做這件事。主要困難在於我不確定如何創建並返回一個PyFunction對象,以及如何將其參數的解析規則傳遞給它。有沒有一個相當有效的方法來做到這一點,或者是這種瘋狂? 從Python方所需的語義是: # given a function f(x, y) f(a, b) -> result f(a) -> f' f

    9熱度

    1回答

    我想在我的C模塊中傳遞一個函數參數uint8_t的數組。 我找不到直接解析這個數組的方法,所以我將它解析成PyObject_t,然後作爲PyTuple_t對象迭代。這樣,我需要將這個元組的每個元素PyObject_t轉換爲uint8_t。 我該怎麼做,一旦沒有PyInt_FromUINT8_t函數或類似的東西?