Шпаргалка по Python [Сборник] (pdf) читать онлайн

Книга в формате pdf! Изображения и текст могут не отображаться!


 [Настройки текста]  [Cбросить фильтры]

@kaspersky_ege

шпаргалка по 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