Они будут инициализированы во время определения класса, что произойдет во время импорта, если вы импортируете класс как часть модуля. Предполагается, что стиль определения «статического» члена класса будет таким:
class Foo:
bar = 1
print Foo.bar # prints '1'
Обратите внимание, что это статический член класса, поэтому нет необходимости создавать экземпляр класса.
Оператор импорта выполнит содержимое модуля ровно один раз, независимо от того, сколько раз или где он выполняется.
Да, статические члены будут доступны любому коду, который к ним обращается.
Да, статические члены класса будут сохранены, если вы удалите объект, тип которого является этим классом:
# Create static member
class Foo:
bar = 1
# Create and destroy object of type Foo
foo = Foo()
del foo
# Check that static members survive
print Foo.bar # Still prints '1'