Разделы инструкций

В сети

Пользователей: 58
Из них просматривают:
Аналоги: 29. Видео: 1. Даташиты: 5. Инструкции: 3. Новости: 4. Остальное: 1. Профиль пользователя: 1. Расчёты: 2. Торрент: 5. Форум: 5. Чат: 2.
Участников: 4
Гостей: 54

an , Google , wolf170571 , Яндекс , далее...
Рекорд 2375 человек онлайн установлен 26.12.2015.

Партнёры


Партнёры

Новые объявления

Оглавление

4.3. Функции range() и xrange()

Если Вам необходимо перебирать последовательность чисел, то пригодится встроенная функция range(). Она создает список, содержащий арифметическую прогрессию:

 

>>> range(10)
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]

 

Указанная верхняя граница никогда не входит в созданную последовательность. range(10) создает список из 10 значений, точно соответствующих допустимым индексам для элементов последовательности, имеющей длину 10. Можно указать другую нижнюю границу или другое приращение (шаг), в том числе и отрицательное:

 

>>> range(5, 10)
[5, 6, 7, 8, 9]
>>> range(0, 10, 3)
[0, 3, 6, 9]
>>> range(-10, -100, -30)
[-10, -40, -70]

 

Для того, чтобы перебрать индексы последовательности, используйте совместно range() и len():

 

>>> a = ['У', 'Матери', 'есть', 'маленькая', 'овечка']
>>> for i in range(len(a)):
...     print i, a[i]
...
0 У
1 Матери
2 есть
3 маленькая
4 овечка

 

Дотошный читатель может заметить, что если нужно перебирать числа большого диапазона, создание списка будет неоправданно, а в некоторых случаях просто не хватит памяти:

 

>>> l=range(1000000000)
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
MemoryError

 

Действительно, если мы не собираемся изменять список, достаточно создать псевдосписок — объект, для которого мы можем получить значения "элементов", но не можем изменить их или порядок их следования. Для этих целей в языке Python предусмотрена функция xrange():

 

>>> xrange(5, 10)
xrange(5, 10)
>>> xrange(0, 10, 3)
xrange(0, 12, 3)
>>> xrange(-10, -100, -30)
xrange(-10, -100, -30)
>>> a = ['У', 'Матери', 'есть', 'маленькая', 'овечка']
>>> for i in xrange(len(a)):
...     print i, a[i]
...
0 У
1 Матери
2 есть
3 маленькая
4 овечка

 

Примечания:
  • (в том числе и инструкция for) требует возможности получить произвольный элемент по индексу.
21
<< Меню >>  
Комментарии принадлежат их авторам. Мы не несем ответственности за их содержание.
Отправитель Нити

Разное

При замене электролитических конденсаторов, кроме соблюдения полярности, не следует значительно превышать допустимое рабочее напряжение.

Интересно

Не выбрасывайте старые HDD (жесткие диски) . Даже от доисторических ПК 286 серий и выше. Находящиеся во внутрях HDD магнитные подковки ( работающие в составе механизма считывания инф. с дисков) очень даже пригодятся в качестве капитального держателя инструментов (отверток, кусачек,плоск, и пр..) любому мастеру .

Похожие инструкции