Skip to content
This repository was archived by the owner on Jul 28, 2025. It is now read-only.
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion modules/10-basics/10-hello-world/ru/EXERCISE.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,4 +4,4 @@
print('Hello, World!')
```

Внимание: если вы напишете `heLLo, woRld!` вместо `Hello, World!`, то это будет считаться другим текстом, потому что заглавные и строчные буквы — это разные символы, отличающиеся _регистром_. В программировании регистр практически всегда имеет значение, поэтому привыкайте всегда обращать на него внимание!
Обратите внимание: если вы напишете `heLLo, woRld!` вместо `Hello, World!`, то это будет считаться другим текстом, потому что заглавные и строчные буквы — это разные символы, отличающиеся _регистром_. В программировании регистр практически всегда имеет значение.
3 changes: 1 addition & 2 deletions modules/10-basics/10-hello-world/ru/data.yml
Original file line number Diff line number Diff line change
@@ -1,7 +1,6 @@
---

name: Привет, Мир!
tips:
- >
[Немного о 'Hello,
World!'](https://ru.hexlet.io/blog/posts/moy-chelovek-menya-ponimaet-istoriya-frazy-hello-world-i-ee-analogov)
World!'](https://ru.hexlet.io/blog/posts/moy-chelovek-menya-ponimaet-istoriya-frazy-hello-world-i-ee-analogov?utm_source=code-basics&utm_medium=referral&utm_campaign=blog&utm_content=lesson)
3 changes: 1 addition & 2 deletions modules/10-basics/20-comments/ru/EXERCISE.md
Original file line number Diff line number Diff line change
@@ -1,2 +1 @@

Создайте однострочный комментарий с текстом: `You know nothing, Jon Snow!`
Создайте комментарий с текстом: `You know nothing, Jon Snow!`
23 changes: 17 additions & 6 deletions modules/10-basics/20-comments/ru/README.md
Original file line number Diff line number Diff line change
@@ -1,22 +1,33 @@

Практически все языки программирования позволяют оставлять в коде комментарии. Они никак не используются интерпретатором. Они нужны исключительно для людей, чтобы программист оставлял пометки для себя и для других программистов.

С их помощью добавляют пояснения, как работает код, какие ошибки нужно поправить или не забыть что-то добавить позже:
Кроме самого кода, в исходных файлах часто можно встретить комментарии — это строки, которые не обрабатываются интерпретатором. Они нужны для программистов: чтобы пояснить, как работает код, отметить, где есть ошибки, или напомнить себе и другим, что нужно доделать.

```python
# Удалить строку ниже после реализации задачи по регистрации
print(10)
```

Комментарии в Python начинаются со знака `#` и могут появляться в любом месте программы. Они могут занимать всю строку. Если одной строки мало, то создается несколько комментариев:
В Python все комментарии — однострочные. Они начинаются со специального символа #, после которого может идти любой текст. Всё, что написано после #, интерпретатор игнорирует.

Комментарий может занимать всю строку:

```python
# For Winterfell!
# For Lanisters!
```

Комментарий может находиться на строке после кода:
Или стоять в конце строки с кодом:

```python
print('I am the King') # For Lannisters!
```

Если нужно оставить длинное пояснение, используют несколько строк с #:

```python
# The night is dark and
# full of terrors.
print('I am the King')
```

Они не влияют на выполнение программы, но делают код понятнее. Комментарии помогают команде быстрее разобраться в чужом коде и не забыть важные детали в собственном.

> 📌 Хорошее правило: пишите код так, чтобы он был понятен без комментариев, но если что-то требует пояснения — не стесняйтесь комментировать.
1 change: 0 additions & 1 deletion modules/10-basics/20-comments/ru/data.yml
Original file line number Diff line number Diff line change
@@ -1,5 +1,4 @@
---

name: Комментарии
tips:
- >
Expand Down
54 changes: 38 additions & 16 deletions modules/10-basics/30-instructions/ru/README.md
Original file line number Diff line number Diff line change
@@ -1,28 +1,50 @@
Когда мы готовим блюдо, то четко следуем рецепту. Иначе еда окажется не такой, как ожидали. Это же правило действует и в программировании.
Когда мы готовим блюдо, то следуем рецепту шаг за шагом. Пропустим этап — и результат будет отличаться от ожидаемого. В программировании работает тот же принцип: чёткий порядок инструкций определяет, как работает программа.

Чтобы увидеть на экране ожидаемый результат, нужно дать компьютеру четкие и пошаговые указания. Это можно сделать с помощью инструкций. Инструкция — это команда для компьютера, единица выполнения. Код на Python в этом случае — это набор инструкций. Его можно представить в виде пошагового рецепта.
Инструкция (или оператор) — это команда для компьютера. Она говорит: «сделай что-то прямо сейчас».

Код на Python запускает **интерпретатор** — программу, которая выполняет инструкции строго по очереди. Как и шаги в рецепте, набор инструкций для интерпретатора пишутся по порядку и отделяются друг от друга переходом на следующую строку.
В Python программа состоит из инструкций — отдельных команд, которые выполняются компьютером. Это как пошаговый рецепт: одна строка — один шаг.

Разработчики должны понимать порядок действий в коде и уметь мысленно разделять программу на независимые части, удобные для анализа.
Интерпретатор Python (специальная программа, которая понимает и выполняет код) выполняет код сверху вниз, по строкам. Он обрабатывает каждую инструкцию по очереди, как если бы читал рецепт по шагам.

Check notice on line 7 in modules/10-basics/30-instructions/ru/README.md

View workflow job for this annotation

GitHub Actions / LanguageTool

[LanguageTool] modules/10-basics/30-instructions/ru/README.md#L7

This word is normally spelled with a hyphen. (EN_COMPOUNDS_PRE_CLASS) Suggestions: `pre-class` Rule: https://community.languagetool.org/rule/show/EN_COMPOUNDS_PRE_CLASS?lang=en-US Category: MISC
Raw output
modules/10-basics/30-instructions/ru/README.md:7:43: This word is normally spelled with a hyphen. (EN_COMPOUNDS_PRE_CLASS)
 Suggestions: `pre-class`
 Rule: https://community.languagetool.org/rule/show/EN_COMPOUNDS_PRE_CLASS?lang=en-US
 Category: MISC

Check notice on line 7 in modules/10-basics/30-instructions/ru/README.md

View workflow job for this annotation

GitHub Actions / LanguageTool

[LanguageTool] modules/10-basics/30-instructions/ru/README.md#L7

This word is normally spelled with a hyphen. (EN_COMPOUNDS_PRE_CLASS) Suggestions: `pre-class` Rule: https://community.languagetool.org/rule/show/EN_COMPOUNDS_PRE_CLASS?lang=en-US Category: MISC
Raw output
modules/10-basics/30-instructions/ru/README.md:7:347: This word is normally spelled with a hyphen. (EN_COMPOUNDS_PRE_CLASS)
 Suggestions: `pre-class`
 Rule: https://community.languagetool.org/rule/show/EN_COMPOUNDS_PRE_CLASS?lang=en-US
 Category: MISC

Посмотрим на пример кода с двумя инструкциями. При его запуске на экран последовательно выводятся два предложения:
Вот пример кода с двумя инструкциями:

```python
print('Mother of Dragons.')
print('Dracarys!')
# => Mother of Dragons.
# => Dracarys!
```Python
print('Mother of Dragons.') # Первая инструкция
print('Dracarys!') # Вторая инструкция
```

https://replit.com/@hexlet/python-basics-instructions
💡 Эти строки говорят компьютеру: «Выведи фразу на экран».

Результат выполнения:

Выше мы говорили, что инструкции отделяются друг от друга переходом на новую строку. Но есть и другой способ: их можно разделить точкой с запятой — `;`:
<pre class='hexlet-basics-output'>
Mother of Dragons.
Dracarys!
</pre>

```python
print('Mother of Dragons.'); print('Drakarys!')
## Порядок имеет значение

Интерпретатор Python исполняет код в строгом порядке — как вы его написали.
Если поменять местами строки:

```Python
print('Dracarys!')
print('Mother of Dragons.')
```

Технической разницы между первым и вторым вариантом нет — интерпретатор поймет инструкции одинаково. Разница только в том, что человеку будет неудобно читать второй вариант.
то и на экране они поменяются:

<pre class='hexlet-basics-output'>
Mother of Dragons.
Dracarys!
</pre>

## Альтернативная форма записи

Обычно инструкции пишутся на отдельных строках, но Python допускает объединение нескольких инструкций в одну строку с помощью ;:

```Python
print('Mother of Dragons.'); print('Dracarys!')
```

Лучше инструкции располагать друг под другом. Так коллегам будет удобнее читать ваш код, обслуживать его и вносить изменения.
Обе версии работают одинаково, но второй вариант хуже читается. В реальных проектах принято писать инструкции построчно — это повышает читаемость и упрощает поддержку кода.
1 change: 0 additions & 1 deletion modules/10-basics/30-instructions/ru/data.yml
Original file line number Diff line number Diff line change
@@ -1,5 +1,4 @@
---

name: Инструкции (Statements)
tips:
- |
Expand Down
2 changes: 1 addition & 1 deletion modules/10-basics/40-testing/ru/EXERCISE.md
Original file line number Diff line number Diff line change
@@ -1 +1 @@
Выведите на экран `9780262531962`.
Выведите на экран `9780262531962` используя `print()`.
9 changes: 5 additions & 4 deletions modules/10-basics/40-testing/ru/README.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,3 @@

Наш сайт автоматически проверяет ваши решения. Как это работает?

В самом простом случае система просто запускает ваш код и смотрит на то, что вывелось на экран. А потом сверяет с тем, что мы «ожидали» по заданию.
Expand All @@ -17,10 +16,12 @@

Самое главное начинается после двоеточия: «значение "10" не равно ожидаемому значению "35"». То есть правильная функция должна была выдать 35, но текущее решение работает неправильно и выдаёт 10.

Ещё стоит отметить, что если вы видите, что в редакторе уже присутствует какой-то код, а вместе с ним комментарии `BEGIN` и `END`, то обычно это подразумевает, что вам нужно писать ваш код между этими самыми BEGIN и END! Код, данный вам заранее, трогать не стоит: это может повлиять на проверку правильности решения. Проще говоря: видите строчки с комментариями `BEGIN` и `END` — пишите свой код между ними!
Если в редакторе уже есть какой-то код, окружённый комментариями *BEGIN* и *END*, это означает, что свой код нужно писать строго между ними. Код за пределами этих комментариев менять не стоит — это может повлиять на корректность проверки.

Проще говоря: видите *BEGIN* и *END* — пишите между ними, остальное не трогайте.

---
## Мой ошибка или нет?

Иногда в процессе решения будет казаться, что вы сделали все правильно, но система "капризничает" и не принимает решение. Подобное поведение практически исключено. Нерабочие тесты просто не могут попасть на сайт, они автоматически запускаются после каждого изменения. В подавляющем большинстве таких случаев, (а все наши проекты в сумме провели миллионы проверок за много лет), ошибка содержится в коде решения. Она может быть очень незаметной, вместо английской буквы случайно ввели русскую, вместо верхнего регистра использовали нижний или забыли вывести запятую. Другие случаи сложнее. Возможно ваше решение работает для одного набора входных данных, но не работает для другого. Поэтому всегда внимательно читайте условие задачи и вывод тестов. Там почти наверняка есть указание на ошибку.

Однако, если вы уверены в ошибке или нашли какую-то неточность, то вы всегда можете указать на нее. В конце каждой теории есть ссылка на содержимое урока на гитхабе (этот проект полностью открытый!). Перейдя туда, вы можете написать issue, посмотреть содержимое тестов (там видно, как вызывается ваш код) и даже отправить pullrequest. Если для вас это пока темный лес, то подключитесь в наше [сообщество в Telegram](https://t.me/hexletcommunity/3), там в канале *'Обратная связь'* мы всегда поможем.
Однако, если вы уверены в ошибке или нашли какую-то неточность, то вы всегда можете указать на нее в нашем [сообществе](https://ttttt.me/HexletLearningBot), там в канале _'Обратная связь'_ мы всегда поможем.
1 change: 0 additions & 1 deletion modules/10-basics/40-testing/ru/data.yml
Original file line number Diff line number Diff line change
@@ -1,5 +1,4 @@
---

name: Как мы проверяем ваши решения
definitions:
- name: Тесты
Expand Down
1 change: 0 additions & 1 deletion modules/10-basics/50-syntax-errors/ru/EXERCISE.md
Original file line number Diff line number Diff line change
@@ -1,4 +1,3 @@

Это задание не связано с уроком напрямую. Но будет полезным потренироваться с выводом на экран.

Выведите на экран:
Expand Down
Loading
Loading