-
Notifications
You must be signed in to change notification settings - Fork 320
Expand file tree
/
Copy path8_set_frozenset.py
More file actions
113 lines (82 loc) · 1.93 KB
/
8_set_frozenset.py
File metadata and controls
113 lines (82 loc) · 1.93 KB
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
# =================================
# Set (множество)
# =================================
print()
print('-= set =-')
# Множество — «контейнер», содержащий не повторяющиеся элементы в случайном порядке.
a = set()
print('a = ', a) # set()
b = set(['a', 'b', 'c', 'c', 'a', 'e'])
print('b = ', b)
c = set('hello')
print('c = ', c)
d = {'a', 'b', 'c', 'd'}
print('d = ', d)
e = {i ** 2 for i in range(10)} # генератор множеств
print('e = ', e)
f = {} # А так получится словарь
print('type({}) -->', type(f)) # <class 'dict'>
# Операции с множествами
print(len(e))
print("'b' in b -->", 'b' in b)
# s == t
c1 = {'e', 'l', 'o', 'h'}
print(c == c1)
# s.issubset(t) s <= t
print(c <= c1)
# s.issuperset(t) s >= t
print(c >= {'h'})
# s.union(t, …) s | t
print(b | d)
# s.intersection(t, …) s & t
print(b & d)
# s.difference(t, …) s - t
print(d - b)
# s.symmetric_difference(t) s ^ t
print(d ^ b)
# s.copy()
f = e
g = e.copy()
print('e:', id(e))
print('f:', id(f))
print('g:', id(g))
# Методы, изменяющие множества
# s.update(other, …) s |= t
b |= d
print(b)
# s.intersection_update(t) s &= t
b &= d
print(b)
# s.difference_update(t) s -= t
b -= {'a', 'b'}
print(b)
# s.symmetric_difference_update(t) s ^= t
b ^= c
print(b)
# s.add(elem)
b.add(1)
print(b)
# s.remove(elem)
b.remove('h')
print(b)
# b.remove('z')
# s.discard(elem)
b.discard(1)
print(b)
b.discard('z') # ошибки не возникает
# s.pop()
print(b.pop())
print(b)
# s.clear()
b.clear()
print(b)
# ========================================
# Frozenset (неизменяемое множество)
# ========================================
a = frozenset('hellow')
b = set('hellow')
print(a == b)
print(type(a - b))
print(type(b | a))
b.add('q')
# a.add('q') # вызовет ошибку