1

Я пытаюсь понять, где и как пакеты Python устанавливаются и хранятся в Linux, и найти лучшее место для их хранения. Мой репозиторий - Debian Wheezy.

Я хотел бы хранить все мои собственные модули Python в одной папке.

Я в замешательстве, потому что

1. Я вижу определенные пакеты (установленные с помощью apt-get), например pygame во всех следующих местах:

  • / USR / доли / pyshared / Pygame
  • /usr/lib/pyshared/python2.7/pygame
  • /usr/lib/pyshared/python2.6/pygame
  • /usr/lib/python2.7/dist-packages/pygame
  • /usr/lib/python2.6/dist-packages/pygame

С некоторыми файлами, связанными из pyshared -> с lib/python2.7/dist-packages

2. Некоторые другие пакеты устанавливаются в /usr/share/pyshared и затем связываются с /usr/lib/python2.6 и 2.7.

3. Наконец, когда я устанавливаю что-то с помощью easy_install, оно попадает в /usr/local/lib/python2.7/dist-packages/ в нечто .egg.

С точки зрения всего этого хаоса, что, по вашему мнению, является правильным способом сохранить пользовательские модули и какой формат файлов для них лучший? Должны ли отдельные файловые модули просто называться что-то.py, а несколько файловых модулей должны находиться в папке с __init__.py в них? Это правильно? Есть ли причина хранить однофайловые модули в папках?

И самое главное, где я должен их хранить? /usr/local/lib/python2.7/my-packages/ или внутри dist-пакетов?

1 ответ1

1

Вы можете хранить их там, где хотите, при условии, что вы соответственно измените $ PYTHONPATH. Я бы не стал помещать их в /usr /lib /, потому что он зарезервирован для файлов, принадлежащих пакетам .deb, и может быть легко удален с помощью dpkg /apt-get. Если вы хотите сохранить вашу систему в чистоте, конечно.

Вы правы насчет отдельных файловых модулей.

На вашем месте я бы поместил их в /opt /my-python-packages или ~ /my-python-packages - чтобы различать сторонние пакеты, установленные easy_install, и мои собственные.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .