Вывод ответа #1864685584

-

Установка питона

Помогите разобратся с установкой питона (все оси)

{autor_name}


{text_rank}
репутация: {repa}
{registration_date}
сообщений: {posts}
{tel_link}
#{postnumber_id}

Цитата: SharkyEXE
 nur87
Так мне легче бы в каждой программе какой-то файл открывать и смотреть,  какие эта программа модули требует. Например,  в кажлой программе открывать файл *.py и смотерть,  что ей требуеться,  какие модули.
 Или как?
Возму для примера программу CallS  - эта программа на питоне. При помощи SISContents распаковал программу CallS , открываю файл \SISContents\327475_calls\private\F00D0BB2\private\F00D0BB2\default.py и вижу строки
import calls
Далее открываю файл \SISContents\327475_calls\private\F00D0BB2\private\F00D0BB2\calls.py и вижу строки со словом import:....import appswitch
import clipboard,telephone,os,e32
import appuifw...

Таким образом, для работы программы CallS  мне нужно из какой-нибудь мега сборки питона выдрать всего-навсего 6 файлов:
appswitch
clipboard
telephone
os
e32
appuifw
и положить эти 6ть файлов в нужные папки? Или это всё не так?


Не совсем так. Многие .py-модули используют .pyd расширения. Те же appswitch, telephone и appuifw импортируют такие расширения, и эти расширения тоже придется положить, только уже в c:/sys/bin.
Кроме того импорты модулей не обязательно находятся в начале .py-файлов, они могут находиться в середине, конце, да где угодно. Их все придётся искать. Помимо этого многие .py-файлы скомпилированы в .pyc-файлы, а их уже нельзя просто так открыть.
Поэтому подобная тактика освобождения от "мусора" в принципе реализуема, но ооочень хлопотная. А сэкономите всего пару мегабайт (в модульпаки включено действительно много модулей на все случаи жизни).
-------------
добавлено в 14.56:
Цитата: fompahaha
 у меня вопрос - почему мобильный питон так отличается от нормального? Если я допустим знаю питон 2.7.2, а на телефоне есть 2.7.2, то почему он такой не похожий? Что, учить отдельно что ли? Тогда это не питон, а другой язык.


Ну, для начала на смартфон нет Python 2.7.2. Есть PyS60 2.0, он соответствует, если я не ошибаюсь CPython 2.5.4, то есть тому самому нормальному. А 2.5 от 2.7 и на компьютере довольно отличается.
Поскольку в ветку 2.7 бэкпортировано из ветки 3.х много возможностей, в том числе и синтаксических, несовместимых с веткой 2. Например, словарные выражения
{k:k for k in xrange(2)} #==> {0:0, 1:1}
Возможности же PyS60 1.4.5 вообще соответствуют CPython 2.2, а это уже такая мохнатая древность.
Возможности модулей из стандартных библиотек соответствующих версий своих больших братьев PyS60 поддерживает максимально полностью. Ограничения связаны только лишь с тем, что всё таки Symbian OS это не виндовс или юникс, а специфическая операционная система.


ответ опубликован:
Рейтинг: 5
голосов: 2



Напомнить пароль