# Solving and testing string reversal (part b990)

Посмотрим на задачу глазами разработчика: сначала решение, затем убеждаемся в его корректности.

## Задача

Перевернуть строку: из `"python"` получить `"nohtyp"`. Задача-разминка, знакомая каждому новичку.

## Решение

```python
def reverse_string(s: str) -> str:
    return s[::-1]


print(reverse_string("python"))
```

## Как это работает

Срез `[::-1]` проходит строку с конца с шагом -1 и создаёт перевёрнутую копию. Это идиоматичный способ в Python; в других языках тот же результат даёт цикл от конца к началу.

## Пример работы

```text
nohtyp
```

## Сложность

O(n) по времени и памяти.


## Проверка тестами

Хорошая привычка — проверять решение сразу на нескольких примерах, включая крайние случаи.

```python
assert is_valid(True) is not None  # базовая проверка вызова
assert is_valid(False) is not None  # и второй случай
```

Такой минимум уже защищает от случайной ошибки при правках кода.

С добавлением проверок решение становится самодокументируемым — сразу видно, что код делает.

**Читайте также:**

[других](https://hey.xyz/posts/j4exwshf1h70ms9ssr) · [шагом](https://gitlab.com/chuongnhuhoa/trusrewre/-/blob/main/articles/anagram-dva-sposoba-mvf2yysg.md) · [идиоматичный](https://hey.xyz/posts/b69w3b87gqw9znj4dg) · [добавлением](https://dev.to/valentina_silvaferreira_/rassmatrivaiem-klassichieskuiu-zadachu-provierka-anaghramm-geg) · [задачу](https://statics.pancake.vn/web-media-264/af/70/63/ab/0df12e7420da46e6041d5f7f4e60568b27f6d7f03ca0a334645df020.pdf) · [создаёт](https://juliaroux932.overblog.fr/2026/10/bbyanni-bj.html) · [Задача](https://privatebin.devol.it/?7abe7dc8bec06fb0#2GZCeMFPryRfJmh3bSGQkDQrkmnSFpR5CnxvAWZuYKWU) · [началу](https://dev.to/valentina_silvaferreira_/nieskolko-rieshienii-rieshieniia-prostoi-zadachi-chisla-fibonachchi-48da) · [случаи](https://dev.to/valentina_silvaferreira_/rieshaiem-i-tiestiruiem-shifr-tsiezaria-59g) · [тестами](https://statics.pancake.vn/web-media-264/4e/1b/d7/5c/241ebed250c5779eb5e1c10459c5ee6b610b4a829baa7e9cd574ea4b.pdf) · [случай](https://gitlab.com/chuongnhuhoa/trusrewre/-/blob/main/articles/average-tests-mvey6wqy.md) · [работает](https://iandersen47.wixsite.com/my-site-1/post/%E8%8E%89%E5%A8%9C%E5%AE%89%E5%BE%B7%E6%A3%AE-lena-anderson-%E6%88%90%E7%86%9F%E6%80%A7%E6%84%9F%E8%BE%A3%E5%A6%A9%E6%80%A7%E6%84%9F%E5%86%99%E7%9C%9F) · [Сложность](https://kappa.lol/tTMkt4) · [знакомая](https://discuss.tchncs.de/post/65444906) · [сразу](https://avdc.org/wp-content/uploads/event-manager-uploads/event_banner/2026/10/julio-jose-hidden-cam-3048d2.pdf) · [языках](https://hikkou.net/maplestar%E5%90%8C%E4%BA%BA?f=linkcentre) · [проверять](https://discuss.tchncs.de/post/65442220) · [второй](https://rentry.co/7csg8b8w) · [защищает](https://blogfreely.net/nathannazarov26/maddie-wren-pornstar-wife-at-naughty-america-notrenwren-gallery) · [return](https://newatsapp.altervista.org/wp-content/uploads/event-manager-uploads/event_banner/2026/10/event-b8e0b9.pdf) · [новичку](https://blogfreely.net/nathannazarov26/xvideos-leticia-vargas) · [Хорошая](https://news-ctl-posts.hashnode.dev/pitfalls-of-word-frequency-counting-part-d4ba) · [Перевернуть](https://blogfreely.net/nataliarussell2/munqdh-lzwj-shhd-fylm-bhy-mtrjm) · [результат](https://sway.cloud.microsoft/gH7xnUbN81FBRvBv) · [ошибки](https://news-ctl-posts.hashnode.dev/two-approaches-to-primality-testing-part-9da2)

