Вы бы добавили про разницу range и xrange...
range создает список, а затем по нему проходит. Если список очень большой, то он будет жить в памяти и сожрет много ресурсов.
xrange возвращает "xrange object". Каждый элемент поочередно создается и передается, затем память освобождается.
Например, x = range(0,10) создаст list и передаст его переменной x.
>>> print x
[1, 2, 3, 4, 5, 6, 7, 8, 9]
С xrange такой фокус не прокатит:
>>> x = xrange(0,10)
>>> print x
xrange(10)
У нас в институте (аэрокосмический факультет) мы специально такой вопрос задавали. Нам ответили, что нашт ученые никогда не опровергали этот факт, да и если логически судить - у американцев очень много грунта с лунной поверхности, причем отсортированного. В то время было проще обезьяну научить управлять космическим аппаратом, чем написать программу, которая сделает тоже самое. Поэтому намного дешевле было действительно людей на луну отправить, чем создать аппарат, который автоматически весь этот грунт соберет и обратно доставит.
Я давно научился строить фразы без "вы" и "ты" вообще. Это с продавцом можно на "вы" говорить, или при разговоре по телефону с неизвестным человеком. А в жизни я страюсь либо вообще не употреблять, чтобы не задеть человека обращением на "ты", особенно незнакомого.
range создает список, а затем по нему проходит. Если список очень большой, то он будет жить в памяти и сожрет много ресурсов.
xrange возвращает "xrange object". Каждый элемент поочередно создается и передается, затем память освобождается.
Например, x = range(0,10) создаст list и передаст его переменной x.
>>> print x
[1, 2, 3, 4, 5, 6, 7, 8, 9]
С xrange такой фокус не прокатит:
>>> x = xrange(0,10)
>>> print x
xrange(10)
>>> print len(a)
9