Шпаргалка по Python [Сборник] (pdf) читать онлайн
Книга в формате pdf! Изображения и текст могут не отображаться!
[Настройки текста] [Cбросить фильтры]
шпаргалка по Python
Переменные
Имена переменных
Python
#
не
могут
начинаться
#
не
могут
совпадать
с
с
цифр,
а
также
ключевыми
специальных
словами
символов
языка
#
примеры
подходящих
имен
переменных:
a_7
toto2
summa
#
примеры
неподходящих
имен
переменных:
with
/
8h
sum
_yat
Ключевые слова
Python
False,
True,
continue,
global,
raise,
None,
def,
if,
and,
del,
import,
return,
try,
elif,
in,
as,
else,
is,
while,
assert,
except,
lambda,
yield
и
break,
finally,
nonlocal,
class,
for,
not,
or,
from,
pass,
др.
так называть пер
еменные нельзя
Присвоение переменных
имя переменной = значение или вычислимое значение
Python
a
=
3
b
=
35
c,
d,
e
+
86
=
'Hi',
-8.9,
1
01
@kaspersky_ege
Типы данных
Базовые типы данных
Python
#
b
#
c
#
e
int - целое число, дробная часть отбрасывается
= 3
float - число с плавающей точкой/дробное число
= 3.5
bool - True/False - логический тип (Булевый)
= True
Контейнерные типы данных
Python
#
#
#
s
a
b
r
d
e
строка (str)
"контейнер" - набор символов
возможно использование как двойных, так и одинарных кавычек
= '' # пустая строка
= 'hello'
= "Webium"
= a + b # r = 'helloWebium'
= a * 3 # d = 'hellohellohello'
= str(645) # e = '645'
Функции split() и join()
Python
#
#
#
s
b
#
#
b
s
a.split(x) - возвращает список из элементов строки a,
строку разделяют по символу х(если не указать х, по
умолчанию разделение по пробелу)
= '1+3+5+78+6'
= s.split('+') # b = ['1', '3', '5', '78', '6']
x.join(a) - возвращает строку из элементов списка a,
соединенных символом х
= ['3', '57', '86', '7']
= '*'.join(b) # s = '3*57*86*7'
02
@kaspersky_ege
Python
#
z
a
b
d
f
p
список (list) - упорядоченный набор объектов
= [] # пустой список
= [1, 'Hi', 17.0, True]
= [2, 2.5]
= a + b
= b * 3
# d = [1, 'Hi', 17.0, True, 2, 2.5]
# f = [2, 2.5, 2, 2.5, 2, 2.5]
= list("abc")
# p = ['a', 'b', 'c']
Приведение типов
Python
x = 1000.7
int_x = int(x) # 1000
float_x = float(x) # 1000.7
str_x = str(x) # '1000.7'
bool_x = bool(x) # True
list_a = [1, 2, 1, 3]
set_a = set(list_a) # {1, 2, 3}
list_a = list(set_a) # [1, 2, 3]
03
@kaspersky_ege
Операции с контейнерными типами данных
Операции для всех контейнерных типов
Python
a
#
e
#
e
#
e
#
e
#
#
e
#
e
#
#
e
= [1, 2, 0, 6, 4]
len(v) - возвращает количество элементов в v
= len(a) # e = 5
min(v) - возвращает минимальное значение из v
= min(a) # e = 0
max(v) - возвращает максимальное значение из v
= max(a) # е = 6
sum(v) - возвращает сумму элементов v
= sum(a) # e = 13
sorted(v) - возвращает копию v
элементами
= sorted(a) # e = [0, 1, 2, 4,
sorted(v, reverse = True) - по
= sorted(a, reverse = True) #
с отсортированными по возрастанию
6]
убыванию
e = [6, 4, 2, 1, 0]
val in v - возвращает True, если значение val содержится в v, и
False в противоположном случае
= (9 in a) # e = False
05
@kaspersky_ege
Операции только для списков
Python
a = [4, 5, 8, 1]
# p.append(val) - добавляет элемент val в конец p
a.append(9) # a = [4, 5, 8, 1, 9]
# p.insert(ind, val) - вставляет значение val в p по индексу
# ind (элементы сдвигаются вправо от ind)
a.insert(1, 6) # a = [4, 6, 5, 8, 1]
# p.remove(val) - удаляет первое вхождение val в p
a.remove(5) # a = [4, 8, 1]
# p.pop(ind) - возвращает значение элемента из p по индексу
# ind + удаляет его из p
s = a.pop(2) # s = 8; a = [4, 5, 1]
# p.sort() - сортирует p по возрастанию
a.sort() # a = [1, 4, 5, 8]
# p.reverse() - устанавлиевает расположение элементов p в
# обратном порядке
a.reverse() # a = [1, 8, 5, 4]
Операции только для списков и строк
Python
a = [4, 7, 8, 8, 1]
#z.index(val) - возвращает копию z с обратным порядком элементов
c = a.index(7) # c = 1
# z.count(val) - возвращет количество вхождений val в z
c = a.count(8) # c = 2
05
@kaspersky_ege
Python
# множество (set) - набор уникальных элементов
j = set() # пустое множество
s = {1, 5, 5, 7, 4, 1} # s = {1, 5, 7, 4}
Python
# словарь (dict) набор пар "ключ:значение"
y = {} # пустой словарь
k = {1: 'January', 2: 'February', 3: 'March'}
Операции только для словарей
Python
a
#
s
#
s
#
s
#
s
#
#
s
#
= {1:'A', 2:'B', 3:'C'}
d[key] - возвращает значение d по ключу key
= a[1] # s = 'A'
d.keys() - возвращает список ключей d
= a.keys() # s = [1, 2, 3]
d.values() - возвращает список значений d
= a.values() # s = ['A', 'B', 'C']
d.items() - возвращает список пар (ключ, значение) d
= a.items() # s = [(1, 'A'), (2, 'B'), (3, 'C')]
d.pop[key] - возвращает значение из d по ключу key и удаляет эту
пару
= a.pop[2] # s = 'B'; a={1:'A', 3:'C'} (очередность элементов
может быть иной)
04
@kaspersky_ege
Операции только для множеств
Python
a = {1, 2, 3}
# g.add(val) - добавляет элемент val в g
a.add(4) # a = {1, 4, 2, 3} (очередность элементов может быть
# иной)
# g.remove(val) - удаляет элемент val из g
a.remove(2) # a = {1, 3} (очередность элементов может быть иной)
Операции только для строк
Python
a = 'hellohello'
# h.replace(s, n, c) - возвращает строку, где произошла замена
подстроки s на подстроку n с раз
m = a.replace('l','r',3) # m = 'herroherlo'
06
@kaspersky_ege
Доступ к элементам списков и строк
Индексы
11 - это и 0й элмент и -4
65 - это 1й и -3
Python
#
#
a
b
c
d
0
1
2
3
#индексы элементов
-4 -3
-2
-1
#отрицательные индексы
'ab'
11
65
78.0
= [ ,
,
,
]
= a[0] # b = 11
= a[-1] # c = 78.0
= a[2] # d = 'ab'
Срезы
Python
#
#
#
#
#
a
b
c
d
e
f
s[start:stop:step] - срез элементов, начная от элемента с
индексом start до элемента с индексом stop(невключительно) и
шагом step
по умолчанию 1 параметр - нулевой индекс, 2 параметр - конец
строки/списка, 3 параметр - единица
= 'helloWebium'
=
=
=
=
=
a[:-1] # b = 'helloWebiu'
a[1:-1] # c = 'elloWebiu'
a[::2] # d = 'hloeim'
a[:] # e = 'helloWebium'
a[::-1] # f = 'muibeWolleh'
07
@kaspersky_ege
Ввод/вывод
Функция ввода
Python
#
#
#
x
#
Считывает значение, введенное с клавиатуры
Считанное значение по умолчанию имеет тип str - используйте
приведение к другим типам при необходимости
= input(y) # На экран выводится строка y, после чего
происходит считывание данных, которые записываются в x
Функция вывода
Python
# Выводит на экран литералы, переменные, выражения
# print(, sep=k, end=g)
# sep - строка, которая будет использована в качестве разделителя
параметров(по умолчанию это пробел)
# end - строка, который будет замыкать вывод(по умолчанию это \n
# - перенос строки)
a = 2
b = 56
print(b,'hello', b - a, sep='**', end='!!!') # 56**hello**54!!!
08
@kaspersky_ege
Математические операции
Операции
+ сложение
- вычитание
* умножение
/ деление
// целочисленное деление (целя часть от деления)
% деление по модулю (остаток от деления)
** возведение в степень
Функции
Python
#
a
b
#
a
b
abs(x) - значение числа х по модулю
= -4
= abs(a) # b = 4
round(x,y) - округление числа х до у знаков после запятой
= 3.57
= round(a,1) # b = 3.6
Булевая логика
Сравнения
< меньше
> больше
= больше или равно
== равно
!= не равно
09
@kaspersky_ege
Python
#
#
x
y
#
#
a
b
c
#
#
a
b
c
#
a
c
True - истина
False - ложь
= 100
= 142
x and y - логическое и, возвращет True, если оба значения x и y
истинны
= (x > y) # False
= (x != y) # True
= (a and b) # c = False
x or y - логическое или, возвращает True, если хотя бы одно
значение x или y истинно
= (x y)
= (not a) # c = False
Условный оператор → if
Блок инструкций выполняется, только если условие истинно
Python
if :
# блок инструкций, если == True
elif :
# блок инструкций, если == False,
# а == True
# блоков elif может быть сколько угодно
# выполнится первый, для которого его условие == True
else:
# блок выполнится, если не выполнено ни одно из условий в if
# и elif
print('nope')
10
@kaspersky_ege
Пример:
Python
if x == 42:
# блок выполнится, если значение х равно 42
print('yeah')
elif x > 0:
# блок выполнится, если значение х не равно 42, но больше 0
else:
# блок выполнится, если не выполнено ни одно из условий в if и
# elif
print('nope')
10
@kaspersky_ege
Циклы → while и for
Циклы → while и for
Блок инструкций выполняется до тех пор, пока условие истинно
Python
while
#
:
блок
инструкций/операций
Важно: избегайте бесконечных циклов!
Пример:
Python
s
=
0
i
=
1
while
i
<
100:
=
#
блок
выполнится
s
=
s
+
i
**
i
=
i
+
1
#
до
тех
пора,
пока
i
меньше
или
равно
100
2
изменение
переменной
из
условия
цикла
Цикл перебора → for
Блок инструкций выполняется для всех
Н
а каждой итерации цикла следу
ющ
э
лементов в
ее значение записывается в
Python
for
in
:
#
блок
инструкций/операций
Пример 1:
Python
#
Проход
по
элементам
последовательности
s
=
'text'
cnt
=
0
for
c
in
#
блок
cnt
=
s:
будет
cnt
+
выполняться
.
для
каждого
1
11
элемента
в
s
.
@kaspersky_ege
Пример 2:
Python
# range(start, stop, step) - генерация последовательности чисел от
# [start;stop) с шагом step
# по умолчанию значение start равно 0, значение step равно 1
a = [11, 18, 9, 12, 23]
summa = 0
for ind in range(len(a)):
# блок будет выполняться для каждого числа из [0; len(a)),
summa += a[ind]
Управление циклом
break - немедленный выход из цикла
continue - переход к следующей итерации цикла
Продвинутое объявление списков и словарей
Python
a = [i for i in range(1, 10)] # a = [1, 2, 3, 4, 5, 6, 7, 8, 9]
# Эквивалентно
a = []
for i in range(1, 10):
a.append(i)
b = [el for el in a if el % 2 == 0] # создание списка b на основе
# a с использованием условия
# Эквивалентно
b = []
for el in a:
if el % 2 == 0:
b.append(el)
12
@kaspersky_ege
Python
# создание словаря с парами код ASCII:символ по этому коду
# chr(i) - возращаает символ по коду i
a = {chr(i):i for i in range(65, 91) if i % 2! = 1}
# Эквивалентно
a = {}
for i in range(65, 91):
a[chr(i)] = i
Работа с файлами
Python
#
a
#
#
#
#
t
#
t
#
#
t
open() - Открытие файла на чтение
= open('путь к файлу + его имя')
Важно: при указании пути слэши необходимо изменить на обратные
слэши
f.read(x) - считывание из файла f первые х символов (если не
указан х, будет считан весь файл)
= a.read()
f.readline() - считывание следующей строки
= a.readline()
f.readlines() - считыавание все строк, в f - список из строк
файла
= a.readlines()
13
@kaspersky_ege
Функции
Определение функции
Python
def ():
# блок инструкций/операций
return # конец работы и возрвращение значения
# функции, по умолчанию - None
Параметры функции и блок инструкций существуют только во время
выполнения функции
Вызов функции
Python
#определение функции
def our_sum(a, b):
res = a+b
return res
x = 9
y = 10
# вызов функции
g = our_sum(x,y) # g = 19
14
@kaspersky_ege
Библиотека itertools
Библиотека для упрощения работы с последовательностями символов и их
генерациями
Для работы с библиотекой:
import itertools - в начале программы
Функция products
Python
#
#
#
#
#
a
b
#
#
#
#
#
#
#
#
#
Создает список всевозможных комбинаций элементов s, каждая
комбинация имеет длину х
Каждый элемент s может встречаться любое количество раз в каждой
из комбинаций
itertools.product(s,repeat=x)
= '12'
= list(itertools.product(a, repeat=3))
в b список из элементов:
['1','1','1']
['1','1','2']
['1','2','1']
['1','2','2']
['2','1','1']
['2','1','2']
['2','2','1']
['2','2','2']
15
@kaspersky_ege
Функция permutations
Python
# Cоздает список всевозможных перестановок элементов s, каждая
# перестановка имеет длину x
# х не может быть больше длины s, если не указан х, длина
# перестановок равна длине s
# Каждый элемент s может встречаться в перестановках столько же раз,
# сколько и изначально в s или меньше
# itertools.permutations(s, x)
a = '123'
b = list(itertools.permutations(a))
# в b список из элементов:
# ['1','2','3']
# ['1','3','2']
# ['2','1','3']
# ['2','3','1']
# ['3','1','2']
# ['3','2','1']
16
Последние комментарии
1 день 8 часов назад
1 день 10 часов назад
2 дней 1 час назад
2 дней 1 час назад
2 дней 6 часов назад
2 дней 10 часов назад