Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
Nein weder noch. `range(2)` ist eine nicht-leere Liste (bzw in Python 3 ein nicht-leerer Generator), evaluiert also zu `True`, ist aber nicht gleich `True`.
Edit: `if range(2)` kann man als `if bool(range(2))` lesen.
Wenn auch die Antworten zu Deiner Problemstellung dem einen oder anderen helfen mag, finde ich nicht, dass man solche bei Codesnippets unterbringen sollte. Hier sollten doch eher kleine nützliche/interessante/wiederverwertbare Codestücke zum besten gegeben werden.