HOME FORUMS MEMBERS RECENT POSTS LOG IN  
× Авторизация
Имя пользователя:
Пароль:
Нет аккаунта? Регистрация
Баннер 1   Баннер 2
НОВЫЕ ТОРГОВАЯ НОВОСТИ ЧАТ
loading...
Скрыть
Вернуться   ANTICHAT > ПРОГРАММИРОВАНИЕ > PHP
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

  #1  
Старый 25.07.2009, 14:01
login999
Постоянный
Регистрация: 12.06.2008
Сообщений: 654
С нами: 9427413

Репутация: 973


По умолчанию

Цитата:
Сообщение от Refresh  
Вопрос, можно ли сделать так что бы при компиляции py2exe, все паковалось в один ехе файл, все библиотеки модули и все остальное
И да и нет
Оно там если пакует в один файл, то это фактически один sfx-архив, перед запуском оно распаковывается во временный каталог и работает из него, относительные пути не канают, динамическую подгрузку тож не сделаешь, фиг угадаешь из какой диры запускали скрипт
 
Ответить с цитированием

  #2  
Старый 23.07.2009, 19:43
Fata1ex
Постоянный
Регистрация: 12.12.2006
Сообщений: 906
С нами: 10216668

Репутация: 930


По умолчанию

Я что-то слышал о Cx_freeze. А вообще поюзай google: ответы там есть.
 
Ответить с цитированием

  #3  
Старый 29.07.2009, 21:31
jecka3000
Постоянный
Регистрация: 15.03.2008
Сообщений: 441
С нами: 9555536

Репутация: 95
По умолчанию

есть установщик самого питона и его интерпритатора (PyScripter например) на кпк/коммуникатор ибо долгое время не бываю дома, нетбука нет.
П.С. Glofish x800 стоит винда 6.0.
 
Ответить с цитированием

  #4  
Старый 30.07.2009, 09:19
login999
Постоянный
Регистрация: 12.06.2008
Сообщений: 654
С нами: 9427413

Репутация: 973


По умолчанию

Есть Linux (на работе) и Windows (дома), есть как сорцы под линуху, так и инсталлятор под винду, дома почти каждый день, на работе тоже (кроме выходных), нетбука тоже нет.
P.S. Nokia(хз че за модель, близко к 3310, 6230 свою раздавил )

 
Ответить с цитированием

  #5  
Старый 13.08.2009, 01:17
Gifts
Reservists Of Antichat - Level 6
Регистрация: 25.04.2008
Сообщений: 827
С нами: 9497186

Репутация: 1304


По умолчанию

Есть ли для питона какой-нибудь аналог пхпшной функции mb_detect_encoding? Есть простенький модуль для джабберного бота, который открывает порт и пересылает все принятые на него данные дальше. Соединение может быть откуда угодно (телнет, пхп сокет, и т.д.) Поэтому и кодировок несколько CP866, CP1251, UTF8. Как бы подружить их всех с русским языком?
 
Ответить с цитированием

  #6  
Старый 13.08.2009, 09:03
login999
Постоянный
Регистрация: 12.06.2008
Сообщений: 654
С нами: 9427413

Репутация: 973


По умолчанию

Цитата:
Сообщение от Gifts  
Есть ли для питона какой-нибудь аналог пхпшной функции mb_detect_encoding? Есть простенький модуль для джабберного бота, который открывает порт и пересылает все принятые на него данные дальше. Соединение может быть откуда угодно (телнет, пхп сокет, и т.д.) Поэтому и кодировок несколько CP866, CP1251, UTF8. Как бы подружить их всех с русским языком?
Нету аналогов Я сам бы много отдал за автоматическое определение кодировки...
__mad, не в теме, это не то что нужно
 
Ответить с цитированием

  #7  
Старый 13.08.2009, 03:40
__mad
Участник форума
Регистрация: 04.11.2007
Сообщений: 103
С нами: 9745696

Репутация: 104
По умолчанию

Цитата:
Есть ли для питона какой-нибудь аналог пхпшной функции mb_detect_encoding?
С питоном незнаком, но первая сцыль в гугле выдала http://chardet.feedparser.org , похоже то что требуется.
 
Ответить с цитированием

  #8  
Старый 13.08.2009, 16:49
__mad
Участник форума
Регистрация: 04.11.2007
Сообщений: 103
С нами: 9745696

Репутация: 104
По умолчанию

Цитата:
__mad, не в теме, это не то что нужно
Хм, и почему же это не подходит?

вот например создаем файлы с разными кодировками:

$iconv -f UTF-8 -t 866 <(echo Привет) > enc-866
$iconv -f UTF-8 -t WINDOWS-1251 <(echo Привет) > enc-windows-1251
$echo Привет > enc-utf-8

Теперь запускаем следующий код (использующий эту либу):

Код:
import glob
from chardet.universaldetector import UniversalDetector

detector = UniversalDetector()

for filename in glob.glob('enc-*'):
    print filename.ljust(60),
    detector.reset()
    for line in file(filename, 'rb'):
        detector.feed(line)
        if detector.done: break
    detector.close()
    print detector.result
$ python enc.py
enc-866 {'confidence': 0.98999999999999999, 'encoding': 'IBM866'}
enc-windows-1251 {'confidence': 0.98999999999999999, 'encoding': 'windows-1251'}
enc-utf-8 {'confidence': 0.98999999999999999, 'encoding': 'utf-8'}

Как видно, скрипт (точней либа) правильно определила разные кодировки.
 
Ответить с цитированием

  #9  
Старый 13.08.2009, 17:10
login999
Постоянный
Регистрация: 12.06.2008
Сообщений: 654
С нами: 9427413

Репутация: 973


По умолчанию

Не обратил внимания на то что он работает со строками, в таком случае да, но я не доверяю чужим модулям, до тех пор пока они не попадают в стандартную библиотеку.
Доверяю Гвидо на все 100%, такая цацка я думаю была бы востребована, если ее не включили в стандартную поставку(более чем уверен в том, что этот вопрос поднимался), знач чето с ней не то.
Вообще, если разобраться по большому счету, то использование чужих модулей конкретно сказывается на юзерах - первое это зависимости(и неудобство как следствие того), а второе-это кривизна кода самого модуля, упрощение команд бота ИМХО(!) не стоит того, чтобы рисковать и ставить непонятно что, которое неизвестно как будет работать.
Кому как, а я (с) Мы не ищем лёгких путей!

Последний раз редактировалось login999; 13.08.2009 в 17:18..
 
Ответить с цитированием

  #10  
Старый 13.08.2009, 17:56
__mad
Участник форума
Регистрация: 04.11.2007
Сообщений: 103
С нами: 9745696

Репутация: 104
По умолчанию

Цитата:
до тех пор пока они не попадают в стандартную библиотеку.
Сторонние модули будут всегда, в независимости от того хорошо они написаны или криво, из за того что в стандартную библиотеку по простому все не влезет, да и не надо оно там.

Цитата:
Вообще, если разобраться по большому счету, то использование чужих модулей конкретно сказывается на юзерах
Это тоже довольно спорно, юзер может даже и не знать что в программе используется тот или иной не стандартный модуль, по простому я могу распространять свою программу с этими модулями.

Цитата:
а второе-это кривизна кода самого модуля
Я думаю что люди пишущие модули, вполне способны качественно написать код, тем более если они это пишут не только для себя.

Цитата:
которое неизвестно как будет работать.
Вполне известно, например для этой либы в документации есть файлик how-it-works.html где вполне кратко описан алгоритм работы либы (в крайнем случае можно пробежаться по коду).

Цитата:
упрощение команд бота
С этим согласен, бот должен по возможности состоять только из кода входящего в стандартную библиотеку (для минимизации размера, и возможность запуска в различных средах).

Еще как вариант, можно использовать вот такой способ:

Код:
enc_list=['utf-8', 'windows-1251', 'IBM866']

def try_encoding(text):
    for try_enc in enc_list:
        try:
            unicode(text, try_enc, "strict")
        except:
            pass
        else:
            break
    return try_enc
Правда с 866 он не выдает экзепшен, так что для этой кодировки нужно придумать что ни будь другое.
 
Ответить с цитированием
Ответ





Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT ™ © 2001- Antichat Kft.