-
Notifications
You must be signed in to change notification settings - Fork 0
/
page_4.py
116 lines (101 loc) · 3.87 KB
/
page_4.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
import streamlit as st
def print_page():
st.markdown("# Словари и множества")
st.subheader("Словари")
col1, col2 = st.columns(2)
with col1:
st.write(
"Словарь (`dict`) оформляется фигурными скобками. Его заполняют пары, "
"записанные через запятую. Первый элемент в паре называется ключ, "
"а второй — значение, они разделяются между собой двоеточием."
)
with col2:
st.code(
"""
english = {
'рука': 'hand',
'нога': 'leg',
'разработчик': 'developer'
}
# доступ по ключу: как по-английски рука?
print(english['рука'])
english['рука'] = 'arm'
# значение для ключа 'рука'
# поменялось с 'hand' на 'arm'
"""
)
st.write(
"Пройти по всем элементам словаря можно циклом `for`, причём есть несколько вариантов:"
)
st.code(
"""
favorite_songs = {
'Тополиный пух': 'Иванушки international',
'Город золотой': 'Аквариум',
'Звезда по имени Солнце': 'Кино',
'Группа крови': 'Кино'
}
for track in favorite_songs:
print(track + ' это песня группы ' + favorite_songs[track])
for music_band in favorite_songs.values():
print('Доктор, я больше не могу слушать группу ' + music_band)
for track, music_band in favorite_songs.items():
print(track + ' это песня группы ' + music_band)
"""
)
st.write(
"Метод `.keys()` возвращает все ключи словаря, а метод `.values()` — все значения."
)
st.subheader("Множества")
col1, col2 = st.columns(2)
with col1:
st.markdown(
"""
Тип `set` похож на список, но есть два важных отличия:
- элементы во множестве не повторяются;
- не гарантируется, что при выводе элементов на экран \
будет соблюден какой-то определённый порядок.
"""
)
st.code("word_set = {'hand', 'leg', 'developer'}")
st.write("Метод `.union()` объединяет два множества:")
st.code(
"""
songs1 = {
'Три белых коня',
'Happy new year',
'Снежинка'
}
songs2 = {
'Last christmas',
'Снежинка',
'Happy new year'
}
print(songs1.union(songs2))
# 'Три белых коня', 'Снежинка',
# 'Last christmas', 'Happy new year'
"""
)
with col2:
st.code(
"""
# получаем сет unique_band_names
# (с англ. «уникальные названия групп»)
unique_band_names = set(bands)
for band in unique_band_names:
print('Не могу больше слушать', band)
"""
)
st.write("Проверка наличия элемента")
st.code(
"""
if 'Аквариум' in unique_band_names:
print('есть такое!')
if 'body' not in word_set:
print('нету')
"""
)
st.write(
"Метод `.difference()` возвращает разницу множеств, "
"а метод `.intersection()` — их пересечение."
)