Эталонный код
Сумма 3х чисел
For
Многомерные списки
Вложенные циклы
While
Алгоритм поиска минимального элемента списка
В python все просто
split
in
Кортеж (tuple)
None
Словарь (dict)
Зарезервированные имена
Итоги
http://pep8.ru/doc/pep8/
192.95K
Category: programmingprogramming

Эталонный код

1. Эталонный код

ЭТАЛОННЫЙ КОД
1

2. Сумма 3х чисел

• Запросить у пользователя 3 числа. Вывести их сумму
№ Пример Пример
ввода
вывода
1
5
8
3
16
2
4
2
11
17
2

3.

print ("Добро пожаловать в программу сложения 3х чисел«)
print ("Введите 1 число")
a = int(input())
print ("Введите 2 число")
b = int(input())
print ("Введите 3 число")
c = int(input())
print ("Сумма чисел равна", a + b + c)
Добро пожаловать в программу сложения 3х чисел
Введите 1 число
5
4
Введите 2 число
8
2
Введите 3 число
3
11
Сумма чисел равна 16
17
1 5
8
3
16
2 4
2
11
17
3

4.

if temp == 18 and condition =="Солнечно":
print ("Оба True")
elif temp > 18 or condition =="Солнечно":
print ("Один из них True или оба True")
else:
print "Оба False"
4

5. For

FOR
5

6.

for НАЗВАНИЕ_ПЕРЕМЕННОЙ in СПИСОК:
# что делать на каждой итерации
6

7.

0 1 2
3 4
for i in [5, 3, 8, 12, 4]:
print (i)
5
3
8
12
4
итерация
значение i
1
5
2
3
3
8
4
12
5
4
7

8.

a = range(5)
a = [0,1,2,3,4]
for i in a:
print (i)
for i in a:
print (20)
0
1
2
3
4
20
20
20
20
20
8

9.

humans = [“Лена”,”Оля”]
for name in humans:
print (name)
Лена
Оля
print (name[0])
print (name[1])
Лена
Оля
9

10.

humans = [“Лена”,”Оля”]
for name in humans:
print (name)
Лена
Оля
for i in range(len(humans)):
print (humans[i])
Лена
Оля
for i, name in enumerate(humans):
print (i, name)
0 Лена
1 Оля
10

11. Многомерные списки

МНОГОМЕРНЫЕ СПИСКИ
11

12.

65
0
18
0
96
0
33
0
32
1
85
1
11
1
78
1
0
1
2
3
12

13.

a = [[1, 2], [3, 4]]
a = [
[1, 2],
[3, 4]
]
print (a[0])
print (a[0][0])
print (a[1][0])
[1, 2]
1
3
13

14.

humans = [
“Лена”,
”Оля”
]
for name in humans:
print (name)
Лена
Оля
14

15.

humans = [
[u“Лена”, u”Воронова”],
[u“Оля”, u”Куницына”]
]
print (humans[0][0])
print (humans[0][1])
print (humans[1][1])
print (humans[1][0][2])
Лена
Воронова
Куницына
я
15

16. Вложенные циклы

ВЛОЖЕННЫЕ ЦИКЛЫ
16

17.

humans = [
["Лена", "Воронова"],
["Оля", "Куницына"]
]
for row in humans:
for col in row:
print (col+" ")
print()
Лена Воронова
Оля Куницына
17

18.

matrix = [
[6, 7, 8],
[10, 11, 12],
[14, 15, 16],
]
6
7
8
10
11
12
14
15
16
print (matrix[0][0], matrix[0][1], matrix[0][2],...)
for row in range(len(matrix)):
for col in range(len(matrix[row])):
print (matrix[row][col])
6 7 8 10 11 12 14 15 16
18

19. While

WHILE
19

20.

k = 3
while 3
k
> 0:
False
0
1
2
print “Ура”
k -= 1
проверки
№ k до
1 3
k после
2
2
3
2
1
1
0
4
0
Ура
Ура
Ура
20

21.

while УСЛОВНОЕ_ВЫРАЖЕНИЕ:
# что повторять, пока условное
# выражение будет правдой (True)
21

22.

print "Введите положительное целое число"
Введите положитель
while True:
ь
Ошибка. Попробуйте
raw_res = input()
-8
if raw_res.isdigit():
Ошибка. Попробуйте
res = int(raw_res)
3
break
Ok
else:
print ("Ошибка. Попробуйте еще раз")
print "Ok"
22

23. Алгоритм поиска минимального элемента списка

АЛГОРИТМ ПОИСКА МИНИМАЛЬНОГО
ЭЛЕМЕНТА СПИСКА
23

24.

numbers = [5, 7, 9, 1, -2, 3]
min_val = numbers[0]
for item in numbers:
if item < min_val:
min_val = item
print (min_val)
-2
24

25. В python все просто

numbers = [5, 7, 9, 1, -2, 3]
print (min(numbers))
-2
print (max(numbers))
9
25

26. split

SPLIT
26

27.

curr_time = “18:45:03”
time_list = curr_time.split(‘:’)
print (time_list)
['18', '45', '03']
today = “16/12/2015”
today_list = today.split(‘/’)
print (today_list)
['16', ‘12', ‘2015']
27

28.

a = “18:45:03”
print (a.split(‘:’))
print (a.split(‘:’, 1))
print (a.rsplit(‘:’, 1))
['18', '45', '03']
['18', '45:03']
['18:45', '03']
28

29.

today = “16/12/2015”
today_list = today.split(‘/’)
print (today_list)
['16', ‘12', ‘2015']
day_list = [‘25’, ’01’, ‘2015’]
print (“-”.join(day_list))
25-01-2015
29

30. in

IN
30

31.

text = u """Я хочу посчитать кол-во гласных букв в этом
тексте """
upper_count = lower_count = 0
for char in text:
if char == u'a' or char == u'о' or char == u'э' \
or char == u'и' or char == u'у' or char == u'ы'
or char == u'е' or char == u'ё' or char == u'ю'
or char == u'я':
lower_count += 1
elif char == u'А' or char == u'О' or char == u'Э' \
or char == u'И' or char == u'У' or char == u'Ы'
or char == u'Е' or char == u'Ё' or char == u'Ю'
or char == u'Я':
upper_count += 1
print (upper_count, lower_count)
\
\
\
\
31

32.

text = """Я хочу посчитать кол-во гласных
букв в этом тексте"""
upper_count = lower_count = 0
for char in text:
if char in u'aоэиуыеёюя':
lower_count += 1
elif char in u'АОЭИУЫЕЁЮЯ':
upper_count += 1
print (upper_count, lower_count)
32

33.

curr_list = [1, 2, 5]
print (3 in curr_list)
False
print (2 in curr_list)
True
print (“я” in u“семья”)
True
33

34. Кортеж (tuple)

КОРТЕЖ (TUPLE)
34

35.

birth_date = (5, 12, 1987)
print (birth_date)
(5, 12, 1987)
print (birth_date[0])
5
birth_date[0] = 12
Traceback (most recent call last):
File "Z:/test/tuple_test.py", line 3, in <module>
birth_date[0] = 12
TypeError: 'tuple' object does not support item assignment
one_item_tuple = (12, )
35

36. None

NONE
36

37.

humans = [
["Лена", "Воронова“, “25/02/1993”],
["Оля", "Куницына“, None]
]
for item in humans:
print (item[0], item[1])
Лена Воронова 25/02/1993
Оля Куницына None
37

38.

humans = [
["master129", "Малахов", "Арсений", "Викторович", "25/01/1993", "+7(918)646-55-91"],
["airfix", "Мадатов", "Василий", "Евгеньевич", "30/11/1995", "+7(951)345-83-17"],
["kr0ff", "Малинин", "Петр", "Степанович", "18/12/1996", "+7(938)044-15-18"],
]
print ("Введите логин пользователя")
login = input()
person = None
for item in humans:
if login == item[0]:
person = item
if person:
print ("Совпадение найдено:")
print (" ".join(person[1:])) # ВНИМАНИЕ!! join объединяет только строки
else:
print ("Результат не найден")
Введите логин пользователя
airfix
Совпадение найдено:
Мадатов Василий Евгеньевич 30/11/1995 +7(951)345-83-17
38

39. Словарь (dict)

СЛОВАРЬ (DICT)
39

40.

person = {
‘name’: "Лена",
‘last_name’: "Воронова“,
‘birth_date’: “25.11.1998"
}
print (person[“last_name”], person[‘name’])
print (person[‘birth_date’])
Лена Воронова
25.11.1998
40

41.

person = {
‘name’: “Morgan",
‘last_name’: “Freeman“,
‘birth_date’: “1.6.1937",
‘height’: 188
}
print (person.keys())
print (person.values())
['birth_date', 'last_name', 'name', 'height']
['1.6.1937', 'Freeman', 'Morgan', 188]
41

42.

person = {
‘name’: “Morgan",
‘last_name’: “Freeman“,
‘birth_date’: “1.6.1937",
‘height’: 188
}
print (person.items())
[('birth_date', '1.6.1937'),
('last_name', 'Freeman'), ('name',
'Morgan'), ('height', 1.88)]
42

43.

person = {
‘name’: “Morgan",
‘last_name’: “Freeman“,
‘birth_date’: “1.6.1937",
‘height’: 188
}
for k, v in person.items():
print (k, v)
birth_date 1.6.1937
last_name Freeman
name Morgan
height 1.88
43

44.

person = {
‘name’: “Morgan",
‘last_name’: “Freeman“,
‘birth_date’: “1.6.1937",
‘height’: 188
}
print (person[‘age’])
Traceback (most recent call last):
File "Z:/test/dict_key_test.py", line 3, in <module>
print person['age']
KeyError: 'age'
44

45.

person = {
‘name’: “Morgan",
‘last_name’: “Freeman“,
‘birth_date’: “1.6.1937",
‘height’: 188
}
print (person.get(‘age’))
None
print (person.get(‘age’, 0))
0
45

46. Зарезервированные имена


sum
max
min
len
range
enumerate
id
import
int
float
bool
str
list
dict
tuple
class
46

47. Итоги

ИТОГИ
47

48.

• for ** in ****: (пройти по **** и
записать каждый элемент в **)
• while ***: (повторять действия
пока *** == True)
• enumerate
• многомерные списки: humans[0][1]
48

49.


None
кортеж (1, 2, 3)
список [1, 2, 3]
словарь {‘ключ’: “значение”}
–keys()
–values()
–items()
49

50.


split(‘:’), rsplit(‘-’, 1)
“:”.join(list)
min
max
in
get(key, default)
50

51. http://pep8.ru/doc/pep8/

51
English     Русский Rules