Tag: c ++

Создание модуля python и привязка его к среде MacOSX

Я пытаюсь построить расширение Python на MacOSX 10.6 и связать его с несколькими фреймворками (только для i386). Я создал файл setup.py, используя distutils и объект Extension. Я хочу связать себя с моими фреймворками, мой LDFLAGS env var должен выглядеть так: LDFLAGS = -lc -arch i386 -framework fwk1 -framework fwk2 Поскольку я не нашел ключевое слово […]

Скорость расширений Python в C против C

Модули расширения Python, написанные на C, быстрее, чем эквивалентные программы, написанные на чистом Python. Как эти модули расширения сравниваются (по скорости) с программами, написанными на чистом C? Программы, написанные на чистом C, даже быстрее, чем эквивалентный модуль расширения Python?

передача экземпляров классов C ++ в python с boost :: python

У меня есть библиотека, которая создает объекты (экземпляры класса A) и передает их в программу python, которая должна иметь возможность вызывать их методы. В основном у меня есть экземпляры класса C ++, и я хочу использовать их из python. Иногда этот объект должен быть передан обратно на C ++ для некоторых манипуляций. Я создал следующий […]

Возможно ли реализовать функциональность выхода Python в автономном режиме C?

Недавно я пришел через ключевое слово yield в Python (а также JavaScript). Я понимаю, что это primarliy используется для шаблона генератора, но конструкция языка, похоже, используется в асинхронных функциях, а также где мои интересы лежат. В асинхронных функциях он может просто действовать как синтаксический сахар, и я знаю, что существуют альтернативные шаблоны для достижения того […]

Выполнить скрипт Python как Root (seteuid vs c-wrapper)

У меня есть короткая задача в сценарии python, которую я бы хотел вызвать из Django (www user), и это потребует прав root. Сначала я подумал, что могу использовать os.seteuid () для Python и установить бит setuid в скрипте, но потом понял, что мне нужно будет установить бит setuid на сам Python, который, как я полагаю, […]

Почему IEnumerable не используется? / Как работают генераторы в c # по сравнению с python

Поэтому я подумал, что понял, что c # yield return является во многом таким же, как и урожай питонов, который, как я думал, я понял. Я думал, что компилятор преобразует функцию в объект с указателем на то, где выполнение должно быть возобновлено, и когда запрос на следующее значение приходит по объекту, запускается до следующего урока, […]

Вызовите код python c c через cython

Поэтому я хотел бы назвать некоторый код python с c через cython. Мне удалось вызвать код cython с c. И я также могу вызвать код python из cython. Но когда я добавляю все это вместе, некоторые вещи отсутствуют. Вот мой код python ( quacker.pyx ): def quack(): print "Quack!" Вот мой cython «bridge» ( caller.pyx […]

Вызывается ли этот PyList_Append (список, Py_BuildValue (…))?

Имеет ли эта утечка ?: static PyObject* foo(PyObject* self, PyObject* args){ PyObect* list = PyList_New(0); for(int i = 0; i < 100; i++) // leak? does PyList_Append increment ref of the temporary? PyList_Append(list, Py_BuildValue("i", 42)); return list; } Хотя, я полагаю, это лучше сделать в любом случае ?: static PyObject* foo(PyObject* self, PyObject* args){ PyObect* […]

Cython: как сделать объект python как свойство класса cython

У меня есть существующий класс Python X и я хочу сделать следующее: from my_python_module import X cdef class Y: cdef X test Но это не работает из коробки, cdef принимает только тип C, а не класс Python. Любая работа вокруг?

Реализация предварительного процессора C в Python или JavaScript?

Существует ли известная реализация препроцессорного инструмента C, реализованного либо в Python, либо в JavaScript? Я ищу способ надежного предварительного создания исходного кода C (и C) и хочу иметь возможность обрабатывать, например, условную компиляцию и макросы, не вызывая внешний инструмент CPP или собственную библиотеку кода. Другим потенциальным вариантом использования является предварительная обработка в веб-приложении в веб-браузере. […]

Python - лучший язык программирования в мире.