Re: [Python-es] Encender bits individuales en variable

2010-06-26 Por tema Hernan Foffani
> 
> A ver, dicho de otra manera, ¿De qué forma se pueden tener ctes y
> variables visibles desde todo lugar.?
> 
> al estilo de C
> 
> #define variable 128
> 
> ?


Tendrías que especificar mejor a qué te refieres cuando dices "todo lugar".
Si lo que quieres es definir una variable y que se pueda acceder desde 
cualquier módulo .py de tu aplicación, no, no es posible sin hacer los debidos 
import. Teniendo en cuenta esto, puedes usar las variaciones y estándares de 
programación que te parezcan mas bonitos.
Por ejemplo, si tu aplicación tiene muchos módulos (quizás mas de diez), creas 
un módulo aparte ctes_termo.py y allí defines las constantes 
B_1SHOT = 1
B_POL = 2
B_R0 = 4
etc.
En el resto de los módulos, luego del import ctes_termo, las accedes como 
ctes_termo.B_1SHOT. Con un from ctes_termo import *, te evitas preceder los 
nombres de las variables con el del módulo.

Si, en cambio tienes un solo módulo, las defines arriba de todo y listo.

___
Python-es mailing list
[email protected]
http://mail.python.org/mailman/listinfo/python-es
FAQ: http://python-es-faq.wikidot.com/


[Python-es] [Fwd: Re: Encender bits individuales en variable]

2010-06-26 Por tema Jesús Genicio

--- Begin Message ---
El Fri, 25 Jun 2010 18:30:26 +0200
Jesús Genicio  dijo:


Hola 


Mira esto a ver si te ayuda.

http://docs.python.org/faq/programming#id9

Saludos

Dr. Bobus

> Hola:
> 
> Necesito poder modificar los bits individuales de un valor determiando.
> Por ejemplo
> 
> Figure 6. CONFIGURATION REGISTER
> 
> MSb  bit 6 bit 5 bit 4 bit 3 bit 2 bit 1 LSb
> DONE THF   TLF   NVB   R1R0POL*  1SHOT*
> 
> He declarado las siguientes variables:
> 
>   b_1Shot= 1
>   b_Pol= 2
>   b_R0= 4
>   b_R1= 8
>   b_TLF= 32
>   b_THF= 64
>   byt_Configuracion= 0
> 
> Y enciendo los bits de la manera:
> 
> byt_Configuracion |= b_R0
> 
> Y los apago:
> 
> byt_Configuracion ^= b_R0
> 
> El problema es que cuando se cambia una configuración, al intentar
> ejecutar el cambio me da este error "de novato claro :))"
> 
> Traceback (most recent call last):
>   File "ds1631.py", line 257, in cambio_grupo_resolucion
> bit_Configuracion ^= b_R0
> UnboundLocalError: local variable 'bit_Configuracion' referenced before
> assignment
> 
> En fin.
> 
> S2
> 
> ___
> Python-es mailing list
> [email protected]
> http://mail.python.org/mailman/listinfo/python-es
> FAQ: http://python-es-faq.wikidot.com/


-- 
"Besides, I think Slackware sounds better than 'Microsoft,' don't you?"
(By Patrick Volkerding)


signature.asc
Description: PGP signature
--- End Message ---
___
Python-es mailing list
[email protected]
http://mail.python.org/mailman/listinfo/python-es
FAQ: http://python-es-faq.wikidot.com/


Re: [Python-es] Encender bits individuales en variable

2010-06-26 Por tema Jesús Genicio
El sáb, 26-06-2010 a las 11:35 +0200, Hernan Foffani escribió:
> > 
> > A ver, dicho de otra manera, ¿De qué forma se pueden tener ctes y
> > variables visibles desde todo lugar.?
> > 
> > al estilo de C
> > 
> > #define variable 128
> > 
> > ?
> 
> 
> Tendrías que especificar mejor a qué te refieres cuando dices "todo lugar".
> Si lo que quieres es definir una variable y que se pueda acceder desde 
> cualquier módulo .py de tu aplicación, no, no es posible sin hacer los 
> debidos import. Teniendo en cuenta esto, puedes usar las variaciones y 
> estándares de programación que te parezcan mas bonitos.
> Por ejemplo, si tu aplicación tiene muchos módulos (quizás mas de diez), 
> creas un módulo aparte ctes_termo.py y allí defines las constantes 
> B_1SHOT = 1
> B_POL = 2
> B_R0 = 4
> etc.
> En el resto de los módulos, luego del import ctes_termo, las accedes como 
> ctes_termo.B_1SHOT. Con un from ctes_termo import *, te evitas preceder los 
> nombres de las variables con el del módulo.
> 
Esto es lo que yo tenía en mente, es la forma en la que lo hago
habitualmente. Y no la encontraba en python.

Gracias.
> Si, en cambio tienes un solo módulo, las defines arriba de todo y listo.
> 
> ___
> Python-es mailing list
> [email protected]
> http://mail.python.org/mailman/listinfo/python-es
> FAQ: http://python-es-faq.wikidot.com/

___
Python-es mailing list
[email protected]
http://mail.python.org/mailman/listinfo/python-es
FAQ: http://python-es-faq.wikidot.com/