Найти - Пользователи
Полная версия: Скрипты-обертки
Начало » Python для новичков » Скрипты-обертки
1
ctocopok
Пытаюсь разобраться во внутренней кухне Питона, интересно и непоняно.

Появился такой вопрос - имеется файл zzz.pyc, который хочется запустить из своего скрипта.
Как это сделать?
execfile ожидает сорцов, а не скомпилированный файл. Но есть только скомпилированные.

Вот например, модуль m.pyc ожидает в модуле config.pyc неких констант. Отредактировать config.pyc я не могу, хочу написать “обертку”.

То есть, скажем, переименовать config.pyc в config2.pyc, написать свой config.py где сначала вызвать оригинальный (ныне переименованный) файл, а затем уже переопределить то, что мне нужно.
Так можно сделать?
Subideal Ox
import zzz
ctocopok
спасибо!

import аналогичен include() у РНР? :)
Subideal Ox
ctocopok
import аналогичен include() у РНР?
точнее include_once(), но гораздо интереснее ;-)
ZZZ
Subideal Ox
import zzz
Угу? Куда меня импортировать-то?

ctocopok
import аналогичен include() у РНР?
Нет. Импорт и инклюд, это совершенно разные вещи и если хочешь писать на питоне, то должен забыть про PHP. Эти языки не совместимы ни синтаксически, ни архитектурно, ни логически и в одной голове не умещаются.
ctocopok
То, что языки друг другу мешают, уже не раз ощущал. После написания с грехом пополам рабочего скрипта, а то и двух, надо было накарябать что-то на РНР.
Ну и тут ломать стало, доллар перед переменной поставь, точку с запятой не забудь, ну и еще многое.
ctocopok
О, еще вопрос.

В похапе есть такие функции как __FILE__ и __LINE__ помогающие, если что, определить, в каком мы файле.
Есть такое в Питоне?
Например, чтобы импортить файлы из того же каталога, что и импортирующий скрипт?
Subideal Ox
ctocopok
В похапе есть такие функции как __FILE__ и __LINE__ помогающие, если что, определить, в каком мы файле.
Есть такое в Питоне?
Например, чтобы импортить файлы из того же каталога, что и импортирующий скрипт?
Здесь импортируют модули, а не файлы. Это принципиально. Забудь про аналогии и PHP. Читай документацию http://docs.python.org/reference/simple_stmts.html#the-import-statement

ZZZ
Угу? Куда меня импортировать-то?
Виноват :D
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