Найти - Пользователи
Полная версия: Вопросы по модулям питона
Начало » Python для новичков » Вопросы по модулям питона
1
Vady
Сейчас оптимизирую расположение модулей питона по логам strace. Заметил такие файлы и папки, которые не найдены при запуске команды python:
./Modules/Setup <–что за папка или файл?
./pybuilddir.txt <– что за файл?
./lib/python27.zip <–что внутри архива???

Еще заметил, что в первую очередь обращаются к *.so-файлам, а потом, в случае ненахождения его, обращается последовательно к *.py, *.pyc, *.pyo. Как их преобразовать в so?
Буду благодарен за ответы!
doza_and
so динамические библиотеки. Обычно получают компиляцией программ написанных на c, c++ и т.п.
Переписывайте программу с питона на c и компилируйте. Есть конечно и много других способов получить so файлы.
Vady
doza_and
so динамические библиотеки. Обычно получают компиляцией программ написанных на c, c++ и т.п.Переписывайте программу с питона на c и компилируйте. Есть конечно и много других способов получить so файлы.
Спасибо за ответ, но, извините:
Во-первых, программа на питоне, задача ее перевода на С даже не стояла.
Во-вторых, вопрос поставлен так: как py/pyc/pyo преобразовать в so (допускаются другие варианты получения so-файла)?
Shaman
Vady
как py/pyc/pyo преобразовать в so
Наименее трудозатратно делать это при помощи cython.
Vady
Shaman
Наименее трудозатратно делать это при помощи cython.
Благодарю за ответ! А примерами можно?
Shaman
Можно и примерами.
Имеем hw.py:
def hello():
    print 'Hello world!'
В консоли, по месту делаем:
$ cython -2 hw.py
$ gcc -shared -pthread -fPIC -fwrapv -O2 -Wall -fno-strict-aliasing -I/usr/include/python2.7 -o hw.so hw.c
$ mv hw.py hw._
Проверяем:
$ python2
Python 2.7.10 (default, May 26 2015, 04:16:29)
[GCC 5.1.0] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> from hw import hello
>>> hello()
Hello world!
Vady
Shaman
Спасибо огромное!
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB