From fa547f3597ae3dadcac14a71010ae37f6c4884e5 Mon Sep 17 00:00:00 2001 From: Ivan Mamtsev Date: Wed, 11 Sep 2024 18:59:50 +0400 Subject: [PATCH] add hints about indentation --- modules/48-conditionals/30-if/ru/README.md | 12 +++++++ .../48-conditionals/40-if-else/ru/README.md | 35 +++++++++++++++++++ .../50-loops/80-for-in-range/ru/EXERCISE.md | 2 +- 3 files changed, 48 insertions(+), 1 deletion(-) diff --git a/modules/48-conditionals/30-if/ru/README.md b/modules/48-conditionals/30-if/ru/README.md index 5eea0e2a..e2a0cd0c 100644 --- a/modules/48-conditionals/30-if/ru/README.md +++ b/modules/48-conditionals/30-if/ru/README.md @@ -21,3 +21,15 @@ https://replit.com/@hexlet/python-basics-conditionals-if Если предикат — ложь, то блок кода пропускается, и функция продолжает свое выполнение дальше. В нашем случае следующая строчка кода — `return 'normal'` — заставит функцию вернуть строку и завершиться. `return` может находиться в любом месте функции — даже внутри блока кода с условием. + +Обратите внимание, на отступы. В Python, в отличие от других языков, блоки кода принято выделять не скобками, а новой строкой с отступом. Отступы обычно состоят из 4 пробелов или одного символа табуляции, который нужно настроить в редакторе на использование пробелов. Все строки в одном блоке должны иметь одинаковый отступ. Увеличение отступа означает начало нового блока, а уменьшение отступа означает конец блока. + +```python + if a == 42: + # отступ и начало блока if + # все строки кода с одним отступом выполняются в одном блоке + print('First') + print('Second') + # конец отступа и выход из блока + print('Goodbye!') +``` diff --git a/modules/48-conditionals/40-if-else/ru/README.md b/modules/48-conditionals/40-if-else/ru/README.md index 6bc75662..3573a235 100644 --- a/modules/48-conditionals/40-if-else/ru/README.md +++ b/modules/48-conditionals/40-if-else/ru/README.md @@ -49,3 +49,38 @@ def get_type_of_sentence(sentence): ``` Чтобы конструкцию было легче оформлять, старайтесь выбирать проверку без отрицаний и подстраивайте содержимое блоков под нее. + +На примере использования `else` видно, как важно не забывать отделять блоки. + +```python +# Неправильно +def check_number(number): + if number > 0: + print("Число положительное") + if number > 10: + print("Число больше 10") + else: + print("Число не положительное") + +check_number(3) +# => Число положительное +# => Число не положительное +``` + +В примере выше мы забыли "вложить" с помощью отступа второй `if`, потому `else` теперь относится к нему, а не первому `if`. + +```python +# Правильно +def check_number(number): + if number > 0: + print("Число положительное") + if number > 10: + print("Число больше 10") + else: + print("Число не положительное") + +check_number(3) +# => Число положительное +``` + +Теперь второй `if` вложен в первый, а `else` на одном уровне с первым и противопоставляется ему. diff --git a/modules/50-loops/80-for-in-range/ru/EXERCISE.md b/modules/50-loops/80-for-in-range/ru/EXERCISE.md index b78c7aa0..0d7e3576 100644 --- a/modules/50-loops/80-for-in-range/ru/EXERCISE.md +++ b/modules/50-loops/80-for-in-range/ru/EXERCISE.md @@ -1,4 +1,4 @@ -Реализуйте функцию `print_table_of_squares(from, to)`, которая печатает на экран квадраты чисел. Она первое `from` и последнее `to` число печатает строку `square of <число> is <результат>` +Реализуйте функцию `print_table_of_squares(first, last)`, которая печатает на экран квадраты чисел. Она первое `first` и последнее `last` число печатает строку `square of <число> is <результат>` Примеры вызова: