Уведомления

Группа в Telegram: @pythonsu

#1 Март 5, 2012 08:36:39

malya
От:
Зарегистрирован: 2012-01-11
Сообщения: 49
Репутация: +  1  -
Профиль   Отправить e-mail  

Отключить создание файлов .pyc

Собственно сабж. Ключ -B не помогает.
Просто раздражает куча этих файлов в рабочей директории, и для дебаг версии они не сильно нужны.



Офлайн

#2 Март 6, 2012 00:10:59

JOHN_16
От: Россия, Петропавловск-Камчатск
Зарегистрирован: 2010-03-22
Сообщения: 3292
Репутация: +  221  -
Профиль   Отправить e-mail  

Отключить создание файлов .pyc

john_16@linux-home:/tmp/1> cat my_lib.py
class A(object):
def __init__(self, value):
self.value=value
def square(self):
return self.value**2

john_16@linux-home:/tmp/1> cat test.py
import my_lib

c=my_lib.A(5)
print c.square()
john_16@linux-home:/tmp/1>
john_16@linux-home:/tmp/1> ll
итого 8
-rwxr--r-- 1 john_16 users 107 марта 6 11:06 my_lib.py
-rwxr--r-- 1 john_16 users 46 марта 6 11:05 test.py
john_16@linux-home:/tmp/1> python -B test.py
25
john_16@linux-home:/tmp/1> ll
итого 8
-rwxr--r-- 1 john_16 users 107 марта 6 11:06 my_lib.py
-rwxr--r-- 1 john_16 users 46 марта 6 11:05 test.py
Аналогично и на Windows.
Ищите проблему в своем коде



_________________________________________________________________________________
полезный блог о python john16blog.blogspot.com

Офлайн

#3 Март 6, 2012 07:52:52

agalen
От:
Зарегистрирован: 2011-03-23
Сообщения: 185
Репутация: +  17  -
Профиль   Отправить e-mail  

Отключить создание файлов .pyc

Еще варианты:

import sys
sys.dont_write_bytecode = True
или с помощью переменной PYTHONDONTWRITEBYTECODE.
Не работает для версий меньше 2.6.



Офлайн

#4 Март 6, 2012 08:28:17

malya
От:
Зарегистрирован: 2012-01-11
Сообщения: 49
Репутация: +  1  -
Профиль   Отправить e-mail  

Отключить создание файлов .pyc

Решил проблему добавление в файл .bashrc строку:

# отключаем создание .pyc файлов
export PYTHONDONTWRITEBYTECODE=True



Офлайн

#5 Сен. 2, 2013 12:50:50

web_pr
Зарегистрирован: 2013-09-02
Сообщения: 13
Репутация: +  0  -
Профиль   Отправить e-mail  

Отключить создание файлов .pyc

а можно самостоятельно указать путь для .pyc?

Офлайн

#6 Сен. 2, 2013 14:56:07

Lexander
От:
Зарегистрирован: 2008-09-19
Сообщения: 1139
Репутация: +  33  -
Профиль   Отправить e-mail  

Отключить создание файлов .pyc

Нет.
Если не нравится размещение pyc рядом с исходниками, начиная с версии 3.2 работает __pycache__ - отдельная директория внутри пакета. Она создается автоматом и туда помещаются все pyc-файлы.



Офлайн

#7 Сен. 23, 2013 10:50:56

web_pr
Зарегистрирован: 2013-09-02
Сообщения: 13
Репутация: +  0  -
Профиль   Отправить e-mail  

Отключить создание файлов .pyc

я использую 3ю версию
и беда в том, что эта директория создается внутри каждой директории с .py файлом
пока полностью отключил генерацию .pyc файлов, но это мягко говоря извращение

через import hooks нет решения?

Офлайн

#8 Сен. 23, 2013 22:09:28

o7412369815963
От:
Зарегистрирован: 2009-06-17
Сообщения: 1986
Репутация: +  32  -
Профиль   Отправить e-mail  

Отключить создание файлов .pyc

как вариант, можно запретить средствами ОС - запускать от пользователя у которого права только чтения на папку с исходниками.

Офлайн

#9 Сен. 24, 2013 13:02:17

web_pr
Зарегистрирован: 2013-09-02
Сообщения: 13
Репутация: +  0  -
Профиль   Отправить e-mail  

Отключить создание файлов .pyc

это все костыли вроде PYTHONDONTWRITEBYTECODE
не хочется отказываться от ускорения при использовании кэша
но и не хочится устраивать мусорку в рабочих каталогах

Офлайн

#10 Сен. 24, 2013 13:13:21

FishHook
От:
Зарегистрирован: 2011-01-08
Сообщения: 8312
Репутация: +  568  -
Профиль   Отправить e-mail  

Отключить создание файлов .pyc

web_pr
это все костыли вроде PYTHONDONTWRITEBYTECODEне хочется отказываться от ускорения при использовании кэшано и не хочится устраивать мусорку в рабочих каталогах

Венда?
Так попробуй
attrib +h /s *.pyc* 

В никсах можно поиграться с файлом .hidden



Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version