Всем привет! Мы продолжаем наше изучение, и сегодня речь пойдет о циклах и списках. Также мы напишем своего мини чат-бота(если не успеем то в след. части)
В списках мы можем хранить как числа и строки, так и переменные. Списки записываются в квадратных скобках и элементы списка перечисляют через запятую.
Каждый элемент списка имеет свой интекс. Но
То есть, если я хочу вывести первый элемент списка и допустим 4-й то индекс первого это 0 а индекс четвертого это 3.
По мимо прочих типов данных, список в качестве элемента может содержать опять таки список. Конструкция ниже называется матрицей.
Не пугайтесь! С ними работать тоже очень просто. Допустим я хочу вывести число 8. Первым делом, я смотрю индекс элемента списка в котором находится 8 и индекс восьмерки в этом списке. Теперь для вывода мы будем использовать такое
Где
Операции со списками.
Со списками, как и с другими типами данных в Python, мы можем проводить опрелеленные операции. Например присвоить новое значение элементу списка.
Также как и над строками можно проводить операции сложения/умножения.
А иногда, когда код слишком большой и тебе лень листать назад чтоб посмотреть есть ли элемент в списке. Можно проверить его наличие следующей конструкцией
Команда print("Codeby" in list) как бы говорит
Если он там есть, то выведет True.
А если нет, то аналогично - False.
Еще, если добавить not к команде, то можно проверить "Точно ли элемента нет в списке".
Функции для списков.
Range.
Функция range преднозначена для генерации последовательности чисел. В использовании она проста. Но перед ее использованием ознакомимся с функцией list().
Функция list преобразует тип в список. Например
И мы увидем
Возратимся к range))
Для генерации простого списка используют следующую конструкцию
Причем x - это кол-во элементов списка. По умолчанию диапазон от 0 до x. Но мы можем указать и свой диапазон
И мы получаем список диапазоном от 3 до 7.
Но и на этом не все. У функции range есть и 3-ий аргумент. Он задает интервал всей последовательности.
Т.е. каждый последующий элемент больше предыдущего на 2.
Закрепим, вобщем вся конструкция такова
FOR.
Цикл For значительно короче чем цикл while. В этом главное отличие.
Конструкция:
И так, первый пример
Здесь переменная i - это переменная счетчик. Она принемает все значения последовательности range(0, 10). Тем самым, значение переменной счетчика выведется на экран 10 раз.
Так же мы можем выводить элементы списков
Здесь все просто, мы благодаря переменной счетчику выводим все элементы посредством ее изменения. Т.е. когда значение i равно например 3-м, то выведет элемент '1'
Давайте выведем 5 раз сообщение "Мы любим Codeby!".
И получаем
While.
While - выполняется при определенном условии.
Конструкция:
На примере все так
i - это переменная счетчик.
В переводе на русский, запись звучит так
То есть, когда цикл выполнится 4-ый раз, то к нему прибавится еще еденица, и i = 5 а мы указывали, пока i < 5
Это значит, что условие False.
Помимо простых циклов, есть и бесконечно выполняющиеся. Т.к. для работы while требует True, то запись следующего характера
Приведет к этому
Подробней я обьясню вам про цыклы в следующей части)
Домашнее Задание.
Задание 3.
Больше заданий будет в следующей части!)
[1] -- Часть 1
[2] -- Часть 2
[3] -- Часть 3
[4] -- Часть 4
Списки.
Списки - это еще один тип данных позволяющий хранить в себе 2 и более элементов.
В списках мы можем хранить как числа и строки, так и переменные. Списки записываются в квадратных скобках и элементы списка перечисляют через запятую.
Код:
>>> x = 2017
>>> sposok = ["C", "O", "D", "E", "B", "Y", x]
>>> print(spisok)
['C', 'O', 'D', 'E', 'B', 'Y', 2017]
Каждый элемент списка имеет свой интекс. Но
индекс элемента = порядковый номер элемента - 1
То есть, если я хочу вывести первый элемент списка и допустим 4-й то индекс первого это 0 а индекс четвертого это 3.
Код:
>>> list = [1, 2, 3,4]
>>> print(list[0])
1
>>> print(list[1])
2
...
По мимо прочих типов данных, список в качестве элемента может содержать опять таки список. Конструкция ниже называется матрицей.
Код:
list = [
[1, 2, 3],
[4, 5, 6],
[7, 8, 9]
]
print(list)
Код:
[[1, 2, 3], [4, 5, 6], [7, 8, 9]]
Не пугайтесь! С ними работать тоже очень просто. Допустим я хочу вывести число 8. Первым делом, я смотрю индекс элемента списка в котором находится 8 и индекс восьмерки в этом списке. Теперь для вывода мы будем использовать такое
print(list[x][y])
Где
- x - индекс списка
- y - индекс 8-и
Код:
print(list[2][1])
Операции со списками.
Со списками, как и с другими типами данных в Python, мы можем проводить опрелеленные операции. Например присвоить новое значение элементу списка.
Код:
>>> abc = ["a", "b", "c"]
>>> print(abc)
['a', 'b', 'c']
>>> abc[1] = "Codeby"
>>> print(abc)
['a', 'Codeby', 'c']
Также как и над строками можно проводить операции сложения/умножения.
Код:
>>> x = [1, 2, 3]
>>> y = [9, 8, 4]
>>> z = y + z
>>> c = y * x[1]
>>> print(z)
[9, 8, 4, 1, 2, 3]
>>> print(c)
[9, 8, 4, 9, 8, 4]
А иногда, когда код слишком большой и тебе лень листать назад чтоб посмотреть есть ли элемент в списке. Можно проверить его наличие следующей конструкцией
Код:
>>> list = ["Codeby", "AL04E", "Python"]
>>> print("Codeby" in list)
True
Команда print("Codeby" in list) как бы говорит
Присутствует ли в списке list элемент 'Codeby'?
Если он там есть, то выведет True.
А если нет, то аналогично - False.
Еще, если добавить not к команде, то можно проверить "Точно ли элемента нет в списке".
Код:
>>> x = [228, 666, 777]
>>> print(not 777 in x)
False
>>> print(not 444 in x)
True
Функции для списков.
list.append(x) - добавляет элемент x в конец списка list
len(list) - выводит длинну списка list(кол-во элементов).
list.insert(x, y) - добавляет новый элемент x в позицию y в списке list.
list.index(x) - ищет элемент x в списке list.
Код:
>>> x = [1, 2]
>>> x.append(3)
>>> print(x)
[1, 2, 3]
>>> x.insert(0, 0)
>>> print(x)
[0, 1, 2, 3]
>>> print(len(x))
4
>>> x.index(2)
2
Range.
Функция range преднозначена для генерации последовательности чисел. В использовании она проста. Но перед ее использованием ознакомимся с функцией list().
Функция list преобразует тип в список. Например
Код:
text = "Codeby"
output = list(text)
print(output)
И мы увидем
Код:
['C', 'o', 'd', 'e', 'b', 'y']
Возратимся к range))
Для генерации простого списка используют следующую конструкцию
Код:
list(range(x))
Код:
>>> print(list(range(5))
[0, 1, 2, 3, 4]
Причем x - это кол-во элементов списка. По умолчанию диапазон от 0 до x. Но мы можем указать и свой диапазон
Код:
>>> x = list(range(3, 7))
>>> print(x)
[3, 4, 5, 6]
И мы получаем список диапазоном от 3 до 7.
Но и на этом не все. У функции range есть и 3-ий аргумент. Он задает интервал всей последовательности.
Код:
>>> c = [0, 10, 2]
>>> print(c)
[0, 2, 4, 6, 8]
Т.е. каждый последующий элемент больше предыдущего на 2.
Закрепим, вобщем вся конструкция такова
len(range(x, y, z))
x -- то с чего начать последовательность.
y -- кол-во элементов последователеости.
z -- интервал между элементами.
Что такое циклы и с чем их едят.
Постараюсь объяснить как только можно понятней. Вы и без меня прекрасно знаете что циклы это последовательность действий которая выполняется n раз. А циклы в программировании это тоже самое, но выполняются они при определенном условии( если оно возвращает True). В Python присутствуют две инструкции для циклов. Это for и while. Как раз ими мы сейчас и займемся.
FOR.
Цикл For значительно короче чем цикл while. В этом главное отличие.
Конструкция:
Код:
for условие:
действие 1
действие 2
И так, первый пример
Код:
for i in range(0, 10):
print(i,"\n")
Здесь переменная i - это переменная счетчик. Она принемает все значения последовательности range(0, 10). Тем самым, значение переменной счетчика выведется на экран 10 раз.
Код:
0
1
2
3
4
5
6
7
8
9
Так же мы можем выводить элементы списков
Код:
x = ["a", "b", "c", "1", "2"]
for i in x:
print(x[i],"\n")
Здесь все просто, мы благодаря переменной счетчику выводим все элементы посредством ее изменения. Т.е. когда значение i равно например 3-м, то выведет элемент '1'
Код:
a
b
c
1
2
Давайте выведем 5 раз сообщение "Мы любим Codeby!".
Код:
msg = "Мы любим Codeby!\n"
for k in range(0, 5):
print(msg)
И получаем
Код:
Мы любим Codeby!
Мы любим Codeby!
Мы любим Codeby!
Мы любим Codeby!
Мы любим Codeby!
While.
While - выполняется при определенном условии.
Конструкция:
Код:
while условие:
действие 1
действие 2
На примере все так
Код:
i = 0 # переменная счетчик
while i < 5:
print(i, ".Hello\n")
i += 1
i - это переменная счетчик.
В переводе на русский, запись звучит так
Код:
изначално i = 0
ПОКА условие i < 5 истино выполнить
ВЫВЕСТИ сообщение ...
после каждого раза прибавлять к i еденицу.
То есть, когда цикл выполнится 4-ый раз, то к нему прибавится еще еденица, и i = 5 а мы указывали, пока i < 5
Это значит, что условие False.
Код:
0.Hello
1.Hello
2.Hello
3.Hello
4.Hello
Помимо простых циклов, есть и бесконечно выполняющиеся. Т.к. для работы while требует True, то запись следующего характера
Код:
while True:
print("Еще круг\n")
Приведет к этому
Подробней я обьясню вам про цыклы в следующей части)
Домашнее Задание.
Задание 1.
Задание 2. *
Напишите своего мини чат-бота используя полученые знания. А в следующей части мы проверим)
Задание 2. *
Создайте свою базу данных и используя знания полученые в этом уроке сделайте ее многофункциональной. Например, добавление элементов в бд, редактирование.
Задание 3.
Используя бесконечные циклы напишите программу, которая получает от пользователя различные слова и выводит первую букву введенного слова умноженую на 3.
[1] -- Часть 1
[2] -- Часть 2
[3] -- Часть 3
[4] -- Часть 4
Последнее редактирование: