Найти - Пользователи
Полная версия: файлы .pth
Начало » Python для новичков » файлы .pth
1
Fibio
Привет всем, изучаю Лутца в главе о модулях, он описывает создание пользовательских файлов с расширением .pth как один из способов добавления в
sys.path путей для поиска модуле при импорте. Хотелось бы применить этот прием но ничего не получается. Работаю в винде, в C:\Python26 создаю каталог my_mod, создаю файл my_mod.pth c записью C:\\Python26\\my_mod куда мне этот файл положить??? пробовала и в C:\Python26 - это “домашний каталог программы” (название из Лутца), т.е. первый каталог куда “лезет” поиск, и в C:\Python26\Lib\site-packages не работаит :(, также изучила содержание других файлов .pth в site-packages там only названия папок, без пути. Почитала тут: http://asvetlov.blogspot.com/2010/05/2.html - “Подчеркну, еще раз, что создавать самому .pth файлы - моветон.” я понимаю но раз уже споткнулась хочется решить задачу. Что я делаю не так?
doza_and
Все правильно
Python26\Lib\site-packages\some.pth
он добавляет поиск в папке указнной в файле.

Как выглядит то, что оно у вас не работает?
Fibio
в C:\Python26\Lib\site-packages лежит файл my_mod.pth с записью: C:\\Python26\\my_mod
в директории C:\Python26\my_mod находится файл a.py
так:
def imp1():
import a
a.spam('first')
imp1()
ImportError: No module named a

так:
def imp1():
import sys
sys.path.append('C:\\Python26\\my_mod')
import a
a.spam('first')
imp1()
Все ок!
s0rg
Fibio
C:\\Python26\\my_mod
Слеши одинарные должны быть.
doza_and
поменяйте на C:\Python26\my_mod\
Кстати может my_mod\ лишнее. Давно это делал, сейчас не помню, но получилось с первого раза.
Fibio
слеши одинарные - не помогает, да и врядли, если сделать принт sys.path там тоже слеши везде двойные, это одинарный слеш в сырой троке.
C:\Python26\my_mod\ - тоже не помогло, my_mod там должно быть т.к. название файла .pth не имеет значения, при импорти по идее просматриваются все файлы с таким расширением, а my_mod в строке C:\Python26\my_mod - это название каталога. Если кто может сталкивался есть ли еще варианты?
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