Уведомления

Группа в Telegram: @pythonsu

#1 Июль 24, 2008 13:03:25

cybergrind
От:
Зарегистрирован: 2008-01-21
Сообщения: 201
Репутация: +  0  -
Профиль   Отправить e-mail  

Конвертирование больших чисел в байтовоую строку

и вообще, похже чтото такое уже комуто надо было: from ctypes import c_buffer =) вот только как с нима надо поиметься что бы оно работало как надо - оянезнаю



Офлайн

#2 Июль 24, 2008 13:25:52

evgenyl
От:
Зарегистрирован: 2008-07-22
Сообщения: 148
Репутация: +  0  -
Профиль   Отправить e-mail  

Конвертирование больших чисел в байтовоую строку

Не нервничайте, питон намного чаще работает напрямую с памятью чем вам кажется и пишет и читает, и ничего страшного, виной тому злополучный GIL
ctypes и включение его в базовый пакет библиотек - прямое докозательство тому
в ctypes можно делать структуры в памяти передавать их компонентам языка написанным на С, потом обратно читать в питоне, всё это прекрасно работает.
Первый шаг статическая типизация, что бы это значило? подумайте, какой будет второй шаг ?
Вы меня немного не так поняли, мне не нужно расширение, не нужно править интерпретатор, я посто спросил есть ли возможность получить эту строку в языке, может я просто его не знаю
Про c_buffer, спасибо, посмотрю счас



Офлайн

#3 Июль 24, 2008 13:44:50

Ferroman
От:
Зарегистрирован: 2006-11-16
Сообщения: 2759
Репутация: +  1  -
Профиль   Отправить e-mail  

Конвертирование больших чисел в байтовоую строку

Первый шаг статическая типизация, что бы это значило
В 3000 не будет статической типизации. Если у Вас есть другая инфа - давайте PEP.
Питон специально отгорожен от прямой работы с памятью.
И вообще
Although practicality beats purity. :)

Офлайн

#4 Июль 24, 2008 14:02:26

evgenyl
От:
Зарегистрирован: 2008-07-22
Сообщения: 148
Репутация: +  0  -
Профиль   Отправить e-mail  

Конвертирование больших чисел в байтовоую строку

PEP нет, пока просто разговоры, анатации к функциям введены для того чтобы облегчить жизнь писателей компиляторов питона
давно извесная философия питона, вот здесь это на русском http://ru.wikipedia.org/wiki/Python в разделе философия, кому интересно
но вопрос не об этом



Офлайн

#5 Июль 24, 2008 14:27:04

shiza
От:
Зарегистрирован: 2007-07-03
Сообщения: 1073
Репутация: +  0  -
Профиль   Отправить e-mail  

Конвертирование больших чисел в байтовоую строку

Погляди модуль array, там кажется было что-то с памятью.



Отредактировано (Июль 24, 2008 14:58:01)

Офлайн

#6 Июль 24, 2008 15:17:10

shiza
От:
Зарегистрирован: 2007-07-03
Сообщения: 1073
Репутация: +  0  -
Профиль   Отправить e-mail  

Конвертирование больших чисел в байтовоую строку

Долго и задумчиво глядел на ctypes.
Пока заткнулся на том, что такое длиное число ни в какую не хочет конвертироваться в ULongLong. Все норовит в Long.
В моем питоне (x86) они видимо еще в каком-то виде записано.



Отредактировано (Июль 24, 2008 15:20:05)

Офлайн

#7 Июль 24, 2008 15:20:55

evgenyl
От:
Зарегистрирован: 2008-07-22
Сообщения: 148
Репутация: +  0  -
Профиль   Отправить e-mail  

Конвертирование больших чисел в байтовоую строку

Мой вопрос просто любпытство, когдато давно я любопытствовал по поводу того как получить доступ к локальном переменной функции которая вызвала мою функцию. В конце концов нашёл, хотя тоже говорили питон типа не может так, передавай масив и всё
собственно вот пример

import sys

def func2():
print sys._getframe(1).f_locals

def func1():
a=10
b=15
func2()

func1()
Вот я думаю что, если это число у него уже есть, то почему бы его и не моч отдать его, в виде бинарной строки



Отредактировано (Июль 24, 2008 15:30:22)

Офлайн

#8 Июль 24, 2008 15:30:07

ZAN
От:
Зарегистрирован: 2007-06-10
Сообщения: 403
Репутация: +  10  -
Профиль   Отправить e-mail  

Конвертирование больших чисел в байтовоую строку

evgenyl
хотя тоже говорили питон типа не может так
Это была наглая дезинформаци :) - в модуле inspect предусмотрены функции для работы со стеком интерпретатора.



Офлайн

#9 Июль 24, 2008 15:31:41

ZAN
От:
Зарегистрирован: 2007-06-10
Сообщения: 403
Репутация: +  10  -
Профиль   Отправить e-mail  

Конвертирование больших чисел в байтовоую строку

evgenyl
sys._getframe(1)
Но все-равно - вызывать спрятанные методы некрасиво, даже если и можно.



Офлайн

#10 Июль 24, 2008 15:37:05

evgenyl
От:
Зарегистрирован: 2008-07-22
Сообщения: 148
Репутация: +  0  -
Профиль   Отправить e-mail  

Конвертирование больших чисел в байтовоую строку

а что красивее сделать 2 лишних преобразования или вызвать спрятанный метод ?



Офлайн

Board footer

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

Powered by DjangoBB

Lo-Fi Version