перевести код с питона на c
Перевод кода из Python в C#
Помогите,пожалуйста, перевести код. Просто язык Python я вообще не знаю.Буду премного благодарен.
Помощь в написании контрольных, курсовых и дипломных работ здесь.
Перевод кода с C# на Python
if (message.Type == MessageType.Photo) < string.
Перевод кода из python в c++
Очень нужна помошь в переводе кода из python в c++, чтобы разобраться в программе. Задача о.
Перевод кода из Python в C#
Помогите,пожалуйста, перевести код. Просто язык Python я вообще не знаю. Эта программа- это взлом.
FateOri, 1)Пополнение счета клиента.
2)Снятие денег со счета.
3)Запрос остатка средств на счете.
4)Перевод денег между счетами клиентов.
5)Начисление процентов всем клиентам.
Вам необходимо реализовать такую систему. Клиенты банка идентифицируются именами (уникальная строка, не содержащая пробелов). Первоначально у банка нет ни одного клиента. Как только для клиента проводится операция пололнения, снятия или перевода денег, ему заводится счет с нулевым балансом. Все дальнейшие операции проводятся только с этим счетом. Сумма на счету может быть как положительной, так и отрицательной, при этом всегда является целым числом.
Входные данные
Входной файл содержит последовательность операций. Возможны следующие операции:
Выходные данные
Для каждого запроса BALANCE программа должна вывести остаток на счету данного клиента. Если же у клиента с запрашиваемым именем не открыт счет в банке, выведите ERROR.
Примеры
входные данные
DEPOSIT Ivanov 100
INCOME 5
BALANCE Ivanov
TRANSFER Ivanov Petrov 50
WITHDRAW Petrov 100
BALANCE Petrov
BALANCE Sidorov
выходные данные
105
-50
ERROR
На сколько сложно перевести код Python на Си?
Помощь в написании контрольных, курсовых и дипломных работ здесь.
Перевести код на python
uses crt; function F(x:real):real; begin F:=cos(2/x)-2*sin(1/x)+1/x; end; function.
Перевести код с C# на python
Здравствуйте, помоге перевести код с C# на python или хотя бы написать что нибудь подобное.
Перевести код С++ на Python
#include #include #include using namespace std; const int n=10;.
Или хотите переписать модуль для питона на Си?
Добавлено через 2 минуты
Конце в концов питон можно встроить в сишную программу (будет толше на целый libpython.so)
numba с JIT-компиляцией уделывает чистый питон в сто раз.
cython, который я приводил выше, где-то 80-90 раз быстрее.
Зачем вы все упрощаете?
Все гораздо сложнее, чем вы себе можете представить.
Существующие ретрансляторы Python to C++ умеют это делать с очень большими ограничениями.
Garry Galler, на самом деле выхлоп таких конвертеров бывает нормальным. Но опять же для очень простых случаев с ручной расстановкой типов переменных:
А какая команда? И каким именно: nuitka, cython или numba?
Я вот только, что через nuitka оттранслировал Python код в С-шный файл. 5 строк Python==3000 строк нечитабельного Си кода. Но, правда, это у меня модуль расширения на выходе получился. cython точно также нагенерил 4000 строк.
Как им сказать, чтобы они не модуль расширения на выходе давали, а простой сорец?
———————————
P.S. Nuitka даже exe-шник helloworld’а мне скомпилила. Какая молодец. А вот стоит им (cython или nuitka) дать какой-то код посложнее helloworld и начинается. то такого-то хэдера нет, то сякого.
cython. И тоже модуль расширения получился с «клеем» для питона.
Lol: NameError: name ‘__file__’ is not defined
А так работает. И вес бинарника не слишком большой, где-то 100-150 КБ. А вот для питона 3.8 код не собрался.
Конвертировать программу Python в код C / C++? [закрытый]
Мне нужно реализовать пару алгоритмов, и я не уверен, что разрыв в производительности достаточно велик, чтобы оправдать всю боль, которую я прошел бы, делая это на C/C++ (что я не очень хорошо). Я подумал о том, чтобы написать один простой алгоритм и сравнить его с таким преобразованным решением. Если только это значительно быстрее, чем версия Python, то у меня не будет другого выбора, кроме как делать это на C/C++.
8 ответов
да. Посмотреть на Cython. Он делает именно это: преобразует Python в C для ускорения.
Если вариант C требует x часов меньше, то я бы инвестировал это время в то, чтобы алгоритмы работали дольше / снова
«инвестировать» здесь не то слово.
создайте рабочую реализацию в Python. Вы закончите это задолго до того, как закончите версию C.
измерьте производительность с помощью профилировщика Python. Исправьте любые проблемы, которые вы найдете. Изменение структур данных и алгоритмов по мере необходимости это правильно. Вы закончите это задолго до того, как закончите первую версию в C.
если он все еще слишком медленный, вручную переведите хорошо спроектированный и тщательно построенный Python в C.
из-за того, как работает ретроспектива, выполнение второй версии из существующего Python (с существующими модульными тестами и с существующими данными профилирования) все равно будет быстрее, чем попытка сделать код C с нуля.
Томпсон для создателей телескопа
Быстрее сделать четырехдюймовое зеркало, а затем шестидюймовое зеркало, чем сделать шестидюймовое зеркало.
Билл McKeenan
Wang Institute
Пролить Кожи является»(ограниченным) компилятором Python-to-C++».
только что наткнулся этой новый инструмент в hacker news.
цитата высокая производительность Python от Михи Горелицк и Ян Ozsvald:
Pythran-это компилятор Python-to-C++ для подмножества Python, который включает частичное numpy поддержка. Он действует немного как Numba и Cython-вы аннотируете аргументы функции, а затем она берет на себя с дальнейшим типом аннотации и специализацией кода. Это занимает преимущество возможностей векторизации и OpenMP-based возможности распараллеливания. Он работает только с Python 2.7.
одна очень интересная особенность Pythran заключается в том, что он попытается автоматическое определение возможностей распараллеливания (например, если вы с помощью map ), и превратить это в параллельный код, не требуя дополнительной усилий от вас. Вы также можете указать параллельные разделы, используя pragma omp > директивы; в этом отношении она очень чувствует аналогично на Cython это поддержка OpenMP.
вы должны отметить, что этот проект молод, и вы можете столкнуться ошибки; следует также отметить, что команда разработчиков очень дружелюбна и, как правило, исправить ошибки в течение нескольких часов.
Я понимаю, что ответ на совершенно новое решение отсутствует. Если Numpy используется в коде, я бы посоветовал попробовать Pythran:
для функций, которые я пробовал, Pythran дает очень хорошие результаты. Полученные функции так же быстро, как и написанный код Fortran (или только немного медленнее) и немного быстрее, чем (довольно оптимизированное) решение Cython.
это также огромное преимущество по сравнению с Numba или другими проектами, основанными на компиляции just-in-time, для которой (насколько мне известно) вам нужно расширить циклы, чтобы быть действительно эффективными. И тогда код с петлями становится очень очень неэффективно использовать только CPython и Numpy.
недостаток Pythran: нет классов! Но поскольку компилировать нужно только те функции, которые действительно нужно оптимизировать, это не очень раздражает.
другой момент: Pythran поддерживает хорошо (и очень легко) параллелизм OpenMP. Но я не думаю, что mpi4py поддерживается.
Я знаю, что это старая тема, но я хотел дать то, что я думаю, чтобы быть полезной информацией.
Я лично использую PyPy, который очень прост в установке с помощью pip. Я взаимозаменяемо использую интерпретатор Python/PyPy, вам вообще не нужно менять свой код, и я обнаружил, что он примерно в 40 раз быстрее, чем стандартный интерпретатор python (либо Python 2x, либо 3x). Я использую pyCharm Community Edition для управления моим кодом, и мне это нравится.
Мне нравится писать код на Python, как я думаю, это позволяет вам сосредоточиться больше на задаче, чем на языке, что является огромным плюсом для меня. И если вам нужно, чтобы он был еще быстрее, вы всегда можете скомпилировать его в двоичный файл для Windows, Linux или Mac. По моему опыту, я получаю около 3.5 x ускорение над PyPy при компиляции, что означает 140x быстрее, чем python. PyPy доступен для кода Python 3x и 2x, и снова, если вы используете IDE, такую как PyCharm, вы можете очень легко обмениваться между PyPy, Cython и Python (требуется немного начального обучения).
некоторые люди могут спорить со мной по этому поводу, но я считаю, что Пайпи быстрее, чем Цитон. Хотя они оба отличный выбор.
Edit: Я хотел бы сделать еще одно краткое замечание о компиляции: когда вы компилируете, результирующий двоичный файл намного больше, чем ваш скрипт python, поскольку он строит все зависимости в него и т. д. Но тогда вы получаете несколько явных преимуществ: скорость!, теперь приложение будет работать на любой машине (в зависимости от того, для какой ОС вы скомпилировали, если не все. lol) без Python или библиотек он также запутывает ваш код и технически «готов к производству». Некоторые компиляторы также генерируют код C, который я действительно не смотрел или не видел, полезен ли он или просто тарабарщина. Удача.