# DEMO. Загадки 1
Note:
План:
- загадки:
- присвоєння
- множинне присвоєння
- перезапис змінної
-
- проблема навчання: скільки часу потрібно витрачати на навчання, щоб отримати знання
- if else
---
## Зав'язка
Програма складається з рядків і виконується рядок за рядком, рядок за рядком.
Це створює два типи задач, які потрібно вміти вирішувати швидко.
----
## Зав'язка
- ​<!-- .element: class="fragment" --> перша задача: якщо знаєш, які були значення змінних, вгадати результат виконання рядка
- ​<!-- .element: class="fragment" --> друга задача: якщо знаєш результат виконання рядка, вгадати які були значення змінних
---
---
Чо́му дорівнює `a`?
```python3=
a = 1
print(a)
```
----
```python3=
a = b = c = d = 2
print(c)
```
----
```python3=
a = 1
b = "football"
print(b)
```
----
```python3=
a = 1
b = 2
football = "tennis"
print(football)
```
----
```python3=
a = 1
b = 2
b, a = a, b
print(a, b)
```
----
```python3=
a = 1
b = 2
football = ""
a = 2
b = 1
print(a)
```
----
```python3=
c = []
print(c)
```
----
```python3=
c = [None, None, None]
c[0] = "football"
c[1] = "basketball"
c[2] = "tennis"
print(c[0])
```
----
```python3=
c = [None, None, None]
d = {}
c[0] = d[0] = "football"
c[1] = d[1] = "basketball"
c[2] = d[2] = "tennis"
print(d[2])
print(c[1])
```
----
```python3=
c = []
d = { 0: "football", 1: "basketball", 2: "tennis" }
c.append(d[0])
c.append(d[1])
c.append(d[2])
print(c[0])
```
----
уважно!
```python3=
c = []
d = { 0: "football", 1: "basketball", 2: "tennis" }
c.append(d[2])
c.append(d[1])
c.append(d[0])
print(c[0])
```
----
### Comprehensions
```python3=
list1 = ["football", "basketball", "tennis", "MMA"]
new_list1 = [x for x in list1]
print(new_list1[0]) # Output: football
print(new_list1[1]) # Output: basketball
print(new_list1[2])
```
----
```python3=
list2 = [99, 88, 77, 66, 55, 44, 33, 22, 11]
new_list2 = [bla for bla in list2]
print(new_list2[0]) # Output: 99
print(new_list2[1]) # Output: 88
print(new_list2[3])
```
----
```python3=
x = ['N', 'A', 'T', 'A', 'S', 'H', 'A', '!']
natasha = [letter for letter in x]
print(natasha[7])
```
----
```python3=
list4 = [7, 1, 20, 3]
print(len(list4)) # Output: 4
new_list4 = [x for x in list4]
print(len(new_list4))
```
----
```python3=
lst = [7, 1, 20, 3]
print(len(lst)) # Output: 4
new_lst = [x for x in lst if x > 5]
print(len(new_lst))
```
----
```python3=
natasha = ['N', 'A', 'T', 'A', 'S', 'H', 'A']
print(len(natasha))
print(len([x for x in natasha if x == 'N']))
print(len([x for x in natasha if x == 'A']))
```
---
### DEMO.Riddles1.A0.0 (обов'язкове завдання)
(зміна коду)
----
### DEMO.Riddles1.A0.1 (обов'язкове завдання)
(написання коду)
Lightbot, level1
----
### DEMO.Riddles1.A0.2 (обов'язкове завдання)
(читання та тестування коду)
---
### Додаткові завдання
#### DEMO.Riddles1.A1.0
#### DEMO.Riddles1.A1.1
#### DEMO.Riddles1.A1.2
#### DEMO.Riddles1.A1.3
#### DEMO.Riddles1.A1.4
---
### Додаткові завдання (складні!)
#### DEMO.Riddles1.A2.0
#### DEMO.Riddles1.A2.1
#### DEMO.Riddles1.A2.2
---
### Real-world завдання, для експертів
#### DEMO.Riddles1.A3.0
{"metaMigratedAt":"2023-06-15T08:59:33.135Z","metaMigratedFrom":"YAML","title":"DEMO. Загадки 1","breaks":true,"contributors":"[{\"id\":\"e587b3b3-f458-471f-8c10-88f5c3bd80d3\",\"add\":3541,\"del\":317}]"}