Форум АНТИЧАТ

Форум АНТИЧАТ (https://forum.antichat.xyz/index.php)
-   PHP, PERL, MySQL, JavaScript (https://forum.antichat.xyz/forumdisplay.php?f=37)
-   -   Python вопрос как сделать так ? (https://forum.antichat.xyz/showthread.php?t=166794)

TikTik 28.12.2009 23:16

Python вопрос как сделать так ?
 
:1. Поскольку все хозяйство у нас должно покоиться в одном ру-файле. то картинку нужно будет сжать, а потом закинуть в base64 (превратив в строку!. Теперь — немножко питоновской магии с объектом gzip.GzipFile. которому при создании мы указываем, куда сохранять уже сжатые данные, и получаем код. который читает файл my.jpg, сжимает, кодирует функцией baseoi.encodestring в строку base64 и полученную строку-изображение сохраняете rez_img.txt;
Собственно вот объясните на пальцах пожалуйста только начал изучать питон буквально 2 дня ну уж очень хочется проделать вот этот вот трюк:)
повторяю код по описанию но не могу разобраться с изображением где же находится этот base64 скрипт на преобразования картинки в текст вот



Код:

img_file = 'my2.jpg'
 
import StringIO
import gzip
import base64 

zbuf = StringIO.StringIO()
zfile = gzip.GzipFile(mode='wb', fileobj=zbuf) zfile.write(open(img_file,'rb').read()) zfile.close()  open('rez_img.txt','w').write(base64.encodestring(zbuf.getvalue()))

но как это всё сделать я не пойму из за слишком малых познаний на данный момент в Python помогите
Имею ввиду как свою картинку преобразовать в текст ?
где он этот rez_img.txt создаёт :mad:

Forcer 28.12.2009 23:59

rez_img.txt создает в рабочей директории - откуда запускается интерпретатор.

TikTik 29.12.2009 00:09

Цитата:

Сообщение от Forcer
rez_img.txt создает в рабочей директории - откуда запускается интерпретатор.

Блин стыдно)) но всё ровно спрошу я облазил всё, ты имеиш ввиду в папке Python 26 я там всё облазил IDLE я запускаю из пуск/программы
Я не знаю откуда он ещё может запускаться :confused: :confused: :( :( :( :( :(
можно по пальцам я ещё вобще зелёный :( но очень трудолюбивый :)

Forcer 29.12.2009 00:34

Если добавить в переменную окружения path директорию с питоном, то его можно будет запускать из любой директории. Допустим, у нас есть директория /parent, в ней есть директория child. Наш скрипт test.py лежит в папке child, то есть полный путь /parent/child.
Содержимое test.py(вывод рабочей директории):
PHP код:

import os

print os.getcwd() 

Допустим, мы находимся в директории parent и запускаем наш скрипт:
Код:

python child/test.py
На экране мы увидим:
Код:

/parent
Если мы перейдем в директорию child и оттуда запустим наш скрипт, то он выведет следующее:
Код:

/parent/child
Читай книжки вообщем.

TikTik 29.12.2009 00:53

Цитата:

Сообщение от Forcer

Читай книжки вообщем.

Спасибо большое ответ и за терпение !!!
Да забежал вперёд на много, ну уж очень захотелось по пробывать

Вот тут ещё вопросик пытаюсь создать тест
http://i020.radikal.ru/0912/b8/f63aded3e99a.jpg
с помощью программы pyinstaller для .exe выскакивает вот такая вот ошибочка там по идеи в папке test должен будет появится файлик ok.txt
Код:

print "Ok"
open("ok".txt , "w").write ('ok')

скорей всего наверно с кодом что то не так очень плохое качество скана почти нечего не видно :( :(

TikTik 29.12.2009 23:55

так не кто и не подскажет на счёт кода правильный или нет ?

login999 30.12.2009 11:54

Эмм.
WindowsError это не похоже на ошибку в твоём коде.
P.S. Попробуй использовать py2exe а не PyInstaller.

rushter 30.12.2009 15:35

Цитата:

Сообщение от login999
Эмм.
WindowsError это не похоже на ошибку в твоём коде.
P.S. Попробуй использовать py2exe а не PyInstaller.

PyInstaller лучше :).Специально попробовал,всё отлично собирается.
Цитата:

open("ok".txt , "w").write ('ok')
PHP код:

open("ok.txt" "w").write ('ok'


TikTik 30.12.2009 15:53

Цитата:

Сообщение от rushter
PyInstaller лучше :).Специально попробовал,всё отлично собирается.

PHP код:

open("ok.txt" "w").write ('ok'


Спасибо ща затестим !

PyInstaller да как говорится всё гениальное просто это о нём))

TikTik 30.12.2009 16:25

что в конце кода написать чтоб командное окошко не закрывалось сразу чтоб можно было посматреть что там пишет ошибка в коде или нет ??


Время: 03:16