Обучение Python. Урок 2
Первый урок можно прочитать тут. В этой части расскажу про типы данных и циклы.
Типы данных
В программировании существуют разные типы данных. Это что-то вроде пояснения к тумбочке-переменной, например ты не будешь хранить носки в тумбочке для еды. Так же и здесь. В более низких языках нужно четко указать какого типа у тебя переменная, но питон – язык с динамической типизацией – это значит, что ты можешь узнать какого типа переменная на данный момент, но тебе не обязательно следить за этим. Питон сам многое делает. Например, ты можешь спокойно написать n=3, что сделает переменную n типа интеджер (целочисленное значение). И сразу после этого сделать его стрингом (string,str) – типом данных текста. n=”3”. Или n=str(n). Это освобождает от лишней беготни за нужным типом переменной. Но вдруг тебе нужно определить,какого типа эта переменная, все-таки? Тогда на помощь приходит функция type(variable). Она возвращает тип переменной variable.
Пример:
Как видишь, есть типы не только целочисленные(int), или строковые(str). Есть еще и списки или массивы (list), кортежи(tuple), числа с плавающей точкой(float). С строковым и целочисленным типом ты уже знаком. Разберем точнее что такое массив. Массив - это тип данных, которые содержит элементы любого другого типа данных. Это как комод с тумбочками, где к каждой тумбочке можно обратиться по ее номеру(индексу). Так же можно запросить определенный элемент массива, указав его индекс в квадратных скобках. Нумерация начинается с нуля:
Как видишь,что-бы обратиться с первому элементу нужно вызвать n[0]. И так далее. Кстати, строки тоже являются массивом. Ведь это массив символов. И значит можно из текста добыть нужную букву или кусок текста, но об этом будет отдельная глава. Здесь маленький пример:
Кортежи
Кортежи (англ. tuple) используется для представления неизменяемой последовательности разнородных объектов. Они обычно записываются в круглых скобках, но если неоднозначности не возникает, то скобки можно опустить.
Как видишь, кортеж можно использовать и в левой части присвоения, что дает возможности массовой инициализации, т.е. массового объявления переменных.
Циклы
Цикл – это многократное выполнения последовательности действий. Зачем это нужно? К примеру, пройтись по массиву и выполнить какое-то действие над всеми его элементами. Например, возвести в квадрат, все значения в массиве.
Циклы бывают нескольких видов. В питоне это циклы 2-х типов:
1-for
2-While
Цикл for выполняет свое действие четко заданное количество итераций. Синтаксис:
1 2 3 |
for [variable] in [tuple or list]: pass |
1 2 3 |
for i in [2,4,5,67,2,9]: i=i**2 print(i) |
Здесь, сначала каждый элемент массива возводится в квадрат(i=i**2 выполняется 10 раз) потом выводится массив, потом уже над каждым элементом непосредственно самого массива производится операция возведения в четвертую степень и после этого выводится уже измененный массив. Функция range() возвращает массив элементов в заданном диапазоне, если, передать ей одно число, то вернется массив от 0 до заданного числа-1. То есть range(3) вернет [0,1,2]. Эта функция куда более мощная и все ее возможности применения можно почитать здесь. Функция len() возвращает количество элементов массива или символов строки. Таким образом мы создали переменную – счетчик (итератор), и пробежались по всем значениям массива var и возвели это значение в 4-ю степень.
Задание: Напишите цикл, для вывода первых 100 чисел Фибоначчи.
Цикл while выполняется до тех пор, пока условие истинно. Синтаксис:
1 2 3 |
for i in [2,4,5,67,2,9]: i=i**2 print(i) |
А 3+5>3 будет True.
Ты можешь сам создать булевую переменную и менять ее и менять, как вздумается:
var = True
var = False
Это пригодиться, когда мы изучим оператор если. А пока создадим Цикл, который может выполняться 100 раз с помощью цикла while:
1 2 3 4 5 6 7 |
counter = 0 while counter<100: print(counter) counter+=1 |
То есть, перед выполнением тела цикла интерпретатор проверяет значение переменной counter и если оно строго меньше 100, то печатает его и увеличивает на 1. Потом снова проверяет значение и так далее.
Задание: Написать цикл, выводящий числа от 1 до 0 с шагом в -0.01. Сделать это с помощью цикла for и while.
А в следующем уроке мы рассмотрим функции Python