ПРОЩЕ СКАЗАТЬ:
Диапазон значений
Функция range() в Python возвращает последовательность чисел.
Она может принимать от одного до трех аргументов: начальное значение, конечное значение и шаг. Если указано только одно значение, то последовательность начинается с 0 и заканчивается указанным числом.
Если указано два значения, то первое – это начальное значение, а второе – конечное значение.
Если указаны все три значения, то первое – начальное значение, второе – конечное значение, а третье – шаг.
Примеры применения функции range():
range(5) - возвращает последовательность чисел от 0 до 4.
range(1, 6) - возвращает последовательность чисел от 1 до 5.
range(2, 11, 2) - возвращает последовательность четных чисел от 2 до 10.
range(10, 1, -1) - возвращает последовательность чисел от 10 до 2 в обратном порядке.
range(5, 0, -1) - возвращает последовательность чисел от 5 до 1 в обратном порядке.
range(0, 10, 2) - возвращает последовательность четных чисел от 0 до 8.
В данном примере создадим 2 последовательности, где функция range() определяет диапазон создававемых элементов.
# Встроенная функция list() - создаем список
num_list = list(range(0, 6))
# Встроенная функция tuple() - создаем кортеж
num_tuple = tuple(range(0, 6))
# Обе последовательности представлены набором элементов в диапазоне от 0 до 5( до 6-исключительно)
print(num_list)
print(num_tuple)
Результат
[0, 1, 2, 3, 4, 5]
(0, 1, 2, 3, 4, 5)
Использование функции range() в цикле for
Функция range([start], stop[, step]) - генерирует список чисел
- start: число начала последовательности.
- stop: генерирует число до данного числа, но не включая его.
- step: разница между каждым числом из последовательности.
Функция range() - создаем числовую последовательность
for i in range(2, 20, 10):
print(f"Число - {i + 0}")
# i при каждом обороте цикла, при генерации списка чисел, увеличивается на "1", по сравнении с первым вариантом, когда "i+0" - увеличения значений соответствует условиям функции "range(2, 20, 10)"
for i in range(2, 20, 10):
print(f"Число - {i + 1}")
Результат
Число - 2
Число - 12
Число - 3
Число - 13
Использование функции range() в цикле for
Функция range([start], stop[, step]) - генерирует список чисел
- start: число начала последовательности.
- stop: генерирует число до данного числа, но не включая его.
- step: разница между каждым числом из последовательности.
Функция range() - создаем числовую последовательность
for i in range(2, 20, 10):
print(f"Число - {i + 0}")
# i при каждом обороте цикла, при генерации списка чисел, увеличивается на "1", по сравнении с первым вариантом, когда "i+0" - увеличения значений соответствует условиям функции "range(2, 20, 10)"
for i in range(2, 20, 10):
print(f"Число - {i + 1}")
Результат
Число - 2
Число - 12
Число - 3
Число - 13
Функция range Перебирание строки
Функция "range()" позволяет перебирать значения последовательности
В качестве перебора в функции range(), выступает длина строки "len(str)"
str = 'Питон'
for i in range(len(str)):
print(str[i], end=' ')
# В качестве разделителя, при выводе результата перебора на экран, можно указать любой символ, в том числе - пустую строку - '.', '/', '-', ' ', '6',
# В данном примере в качестве разделителя перебираемой строки ' ' - пробел
# Определяем длину строки
print('\n---------')
print(len(str))
Результат
П и т о н
---------
5
С помощью range() можно перебрать строку через 4 (3 2, через промежуток, доступный длине строки)
В качестве перебора в функции range(), выступает длина строки "len(str)" и "4"
s = 'Инклюзивность'
for i in range(0, len(s), 4):
print(s[i], end='')
# В качестве разделителя, пустая строка - ''
Результат
Июнь
Функция range() - сумма чисел
В данном примере определим пределяет диапазон сложения чисел в последжовательности и сложим суказанным числом
Найти сумму первых 4-х целых чисел и сложить с указанным числом.
0 1 2 3
s = 100
for i in range(4):
# от 0 до 4 (4 не входит в последовательность)
s += i
print(s)
Результат
106
filter()-отбор гласных букв
Поиск гласных букв в списке
В данном примере из списка с буквами вычленяются гласные буквы и выводятся на экран в виде кортежа
Понятно, что выделять и преобразовывать можно и согласные буквы и любые другие символы, взятые для определения.
letters = ['а', 'б', 'в', 'г', 'д', 'е', 'ё', 'и']
def vowels(letter):
vowels = ['а', 'е', 'ё']
return True if letter in vowels else False
vowels = filter(vowels, letters)
# Преобразование в кортеж с гласными буквами
vowels = tuple(vowels)
print(vowels)
Результат
('а', 'е', 'ё')
filter()-фильтрование по первому символу
Фильтрование список строк по первому элементу в каждой строке
В функции "lambda" объявляется элемент "x", которому соответствует первый символ строки с соответствующим индексом "x[0]"
Понятно, что можно писать индекс любого порядка, но если указанный индекс не попадает в диапазон итерируемых элементов, появится ошибка - "IndexError: string index out of range"
Нижний регистр указанной буквы каждой строки, всё равно попадает в фильтрацию списка.
Для вывода результата применяем функцию "list()", которая создает список отфильтрованных объектов.
# В данном примере в качестве значения для фильтрации передаем букву "к" (но прописать можно любое сочетание букв или слов, но язык должен соответствовать языку итерируемого списка)
diff_strings = ['Синее море', 'Красный флаг', 'старая задача', 'Средний класс', 'вот то-то']
print(list(filter(lambda x: x[0].lower() in 'к', diff_strings)))
print('')
# В этом примере используется lambda-функция, в качестве первого аргумента функции "filter()", которая проверет итерируемый список, на включение и удаление каждого элемента по второму аргументу - Возврат False - значение отбрасывается
# Этот вариант с функцией, которую мы определяем, но первый символ - "в":
def names_vowels(x):
return x[0].lower() in 'в'
filtered_names = filter(names_vowels, diff_strings)
print(list(filtered_names))
Результат
['Красный флаг']
['вот то-то']
PYTHON во фронтенде на WEB-странице в HTML через фреймворк PyScript ▼
Это пример итерации значений в диапазоне от 1 до 3, созданного функцией range().
def count_bottle(count):
remainder = count % 1
if remainder == 1 and not count == 3:
return f'{count}'
elif remainder >= 3 and remainder <= 0 and not (count >= 1 and count <= 3):
return f'{count}'
else:
return f'{count}'
def base():
print(f'{count_bottle(N)} кофе.')
print('Выпей чашечку')
if N == 1:
final()
else:
print(f'{count_bottle(N - 1)} кофе?\n')
def final():
print('Нет больше кофе!\n')
for N in reversed(range(1,3)):
base()
# Данный блок выводиться на веб-страницу с помощью PyScript фреймворка
Последовательность значений в диапазоне от 1 до 3:
▲ Результат работы PyScript на WEB-странице
Изделия из дерева
Декор Модели Резьба
Авторские работы
Нижний Новгород
ПРОЕКТИРОВАНИЕ
ИЗГОТОВЛЕНИЕ
РЕСТАВРАЦИЯ









