Код не ожидает инициализации класса! - PullRequest
1 голос
/ 18 декабря 2008

У меня есть блок кода, который в основном инициализирует несколько классов, но они расположены в последовательном порядке, так как более поздние ссылаются на ранние.

По какой-то причине последний инициализируется раньше первого ... мне кажется, что происходит какая-то многопоточность. Что мне нужно знать, так это как я могу остановить это от этого?

Есть ли способ заставить класс init сделать что-то похожее на отправку возвращаемого значения?

Или, может быть, я мог бы использовать класс в некотором операторе if, чтобы проверить, был ли класс уже инициализирован?

Я немного новичок в Python и перехожу с C, поэтому я все еще привыкаю к ​​небольшим различиям, таким как соглашения об именах.

Ответы [ 2 ]

0 голосов
/ 18 декабря 2008

Пробелы и табуляция ... тьфу. >.>

Ну, по крайней мере, теперь это работает. Я признаю, что я скучаю по скобкам из C вместо принудительного отступа. Это довольно удобно в качестве языка прототипирования. Может быть, я полюблю это больше, когда пойму лучше.

0 голосов
/ 18 декабря 2008

Python до 3.0 имеет глобальную блокировку, поэтому все работает в одном потоке и в последовательности.

Я предполагаю, что какой-то побочный эффект инициализирует последний класс из другого места, чем вы ожидаете. Бросьте исключение в __init__ этого последнего класса, чтобы увидеть, где он вызывается.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...