Lo que tenemos es correcta, aunque no se llamaría global, es un atributo de clase y se puede acceder a través de la clase, por ejemplo, Shape.lolwut
o a través de una instancia, por ejemplo shape.lolwut
pero tenga cuidado al establecer que, ya que establece un nivel de instancia no atribuyen atributo de clase
class Shape(object):
lolwut = 1
shape = Shape()
print Shape.lolwut,
print shape.lolwut,
# setting shape.lolwut would not change class attribute lolwut
# but will create it in the instance
shape.lolwut = 2
print Shape.lolwut,
print shape.lolwut,
# to change class attribute access it via class
Shape.lolwut = 3
print Shape.lolwut,
print shape.lolwut
de salida:
1 1 1 2 3 2
Alguien puede esperar salida sea 1 1 2 2 3 3
pero sería incorrecto
Si la respuesta a continuación es correcta, debe aceptarla como tal – Clintm