[#] Пишем изящный парсер на Питоне
habrabot(difrex,1) — All
2016-09-06 02:00:03


В C++17 появляется новый синтаксис для оператора `if`, позволяющий объявлять переменные прямо в заголовке блока. Это довольно удобно, поскольку конструкции вида…

Foo* foo = make_foo();
if(foo != nullptr) {
// do work with foo
}
// never use foo again

… довольно общеупотребительны. Код выше лёгким движением руки программиста (и тяжёлым движением руки комитета по стандартизации) превращается в:

if(Foo* foo = make_foo(); foo != nullptr) {
// do work with foo
}
// never use foo again (well, you can't anyway)
Стало чуть-чуть лучше, хотя всё ещё не выглядит идеально. В Python нет и такого, но если вы ненавидите `if` в Python-коде так же сильно, как я, и хотите научиться быстро писать простые парсеры, то добро пожаловать под кат. В этой статье мы попытаемся написать короткий и изящный парсер для JSON на Python 2 (без каких-либо дополнительных модулей, конечно же).
[Читать дальше →][1]

[1]: https://habrahabr.ru/post/309242/?utm_source=habrahabr&utm_medium=rss&utm_campaign=feed_posts#habracut