Size: a a a

Хирьянов Т.Ф., Практика программирования на Python 3 (2019)

2020 May 10

m

mr.slavik in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
но - да, я честно говоря не могу придумать для этого пока применение
источник

КК

Кирилл Картвелишвили... in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
он в обе стороны работает? неплохо
источник

КК

Кирилл Картвелишвили... in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
ну из питона можно вызывать плюсы, когда нужны какие-то сложные вычисления
источник

m

mr.slavik in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
ну хотя - на самом деле - какиенить методы работы со строками или какаянить либа которая поддерживается не тобой для питона
источник

КК

Кирилл Картвелишвили... in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
а как в таких случаях себя ведёт интерпретатор питона? кусок кода на плюсах заранее компилится или что?
источник

КК

Кирилл Картвелишвили... in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
mr.slavik
ну хотя - на самом деле - какиенить методы работы со строками или какаянить либа которая поддерживается не тобой для питона
для работ со строками питон просто прекрасен
источник

m

mr.slavik in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
и тебе нужно в работе твоего плюсового модуля использовать либу эту - например криптографию или сжатие
и нужно чтобы это работало на всех платформах
источник

m

mr.slavik in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
если ты не вызываешь питоновский этот модуль, который по сути так же реализован на си - ты должен для всех платформ сделать чтобы динамическая библиотека была своя
это геморрой
а так ты просто говоришь что для работы модуля нужен bz2 или pyaes какой нить
и вызываешь из C++ реализации своей эту либу через питон
которая не намного медленней будет работать чем если бы ты ее подцеплял в виде библиотеки в свой модуль, но геморроя меньше
источник

КК

Кирилл Картвелишвили... in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
я не совсем понимаю как тогда в паре работают интерпретатор питона и компилятор плюсов. или весь код компилится сразу и с питоном тоже?
источник

m

mr.slavik in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
ну у питона есть api
cpython например
источник

m

mr.slavik in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
ты можешь скомпилировать сишный код и используя cpython api работать с интерпретатором питона
источник

m

mr.slavik in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
pip компилит через компилятор который ты указал в setup.py исполняемый файл твоей программы
и добавляет его как часть интерпретатора питона
источник

m

mr.slavik in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
источник

КК

Кирилл Картвелишвили... in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
ну вот мне был порядок интересен. если мы из питона вызываем плюсы, то сначала компилится код на плюсах, а после мы уже как обычно работаем с интерпретатором питона?
источник

m

mr.slavik in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
ну да
источник

m

mr.slavik in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
нам же нужно просто между приложением нашего модуля и приложением - интерпретатором питона настроить связь
после этого мы можем туда сюда данные передавать между ними
и из нашего плюсового приложения попросить интерпретатор питоновский для нас что-то сделать
другой вопрос - стартует ли при этом еще один процесс интерпретатора
надо уточнить, думаю что да
но это неточно
источник

m

mr.slavik in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
но pybind11 советую взять на вооружение
источник

m

mr.slavik in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
я до него почти 2 дня провозился с cpython api чистым
источник

КК

Кирилл Картвелишвили... in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
это всё по обстоятельствам делается. я вот буду чо-то делать, увижу, что вот хорошо бы было щас подтянуть сюда либу какую-то, тогда и воспользуюсь
источник

m

mr.slavik in Хирьянов Т.Ф., Практика программирования на Python 3 (2019)
но в итоге попробовал pybind11 и за полчаса все решилось
источник