RE: Tamaño de un objeto en python

Carlos Porter cporter1email en yahoo.es
Vie Jun 17 08:25:31 CEST 2005


 --- Hernán Martínez Foffani <hernan en orgmf.com.ar>
escribió:

> > Mi duda es si se puede implementar o existe en
> python
> > una  función que reciba un objeto y retorne el
> tamaño
> > de dicho objeto en bytes (como sizeof en c++) ?
> 
> No, no existe tal cosa.

Puedes ver que si existe tal cosa en C++
http://www.mi.uni-koeln.de/c/mirror/www.codeguru.com/cpp/tic/tic_html.zip/tic0055.html



> 
> > Pregunto esto por que al leer sobre funciones de
> > entrada/salida desde archivos en python ,se me
> ocurrio
> > crear un modulo para el acceso aleatorio a los
> > registros de un archivo (en teoría un registro por
> > linea, aunque si conosco el tamaño de cada objeto
> > registro esto no importaría mucho) utilizando el
> > metodo seek() de un objeto archivo
> 
> No entiendo la relación entre el seek y el tamaño de
> los objetos de python.  ¿Puedes precisar exactamente
> qué
> contiene el archivo?
> 
> -H.

El asunto es que conociendo el tamaño de un objeto X
(que digamos pesa 2 bytes) que esta almacenado dentro
de un archivo junto con otros objetos identicos (aquí
puede que haya entendido mal como se trabajo el acceso
a un archivo) entonces puedo acceder al enésimo objeto
de un archivo de la siguiente forma

f = open('binary.dat')

#tamaño del objeto
objtam = 2

# acceder al vigesimo objeto dentro del archivo
f.seek( 20 * objtam, 0)

# recupere unicamente el registro accesado
reg = f.read(objtam)

Por cierto, que planteo la pregunta, por que durante
mi curso de estructuras de datos en C++ hicimos algo
muy parecido, y quise saber si en python se podia
hacer lo mismo.


		
______________________________________________ 
Renovamos el Correo Yahoo! 
Nuevos servicios, más seguridad 
http://correo.yahoo.es




Más información sobre la lista de distribución Python-es