Markdown синтаксис по-русски
Markdown - это легковесный язык разметки текста для веба. Был создан для удобства чтения и написания размеченных текстов. Движок markdown генерирует валидный XHTML. Авторы - John Gruber и Aaron Swartz. Официальная страница проекта и более подробная документация на сайте Daring Fireball.
Ниже привожу короткий конспект, который, кстати, тоже написан на этом замечательном языке.
Блочные Элементы
Параграфы
<пустая строка>
Текст параграфа. Может быть
разбит на несколько строк.
<пустая строка>
Переводы строк
Что бы вставить перевод строки без начала нового параграфа, в конец нужно добавить два или больше пробелов.
Текст параграфа.<пробел><пробел>
Этот текст будет с новой строки.
Заголовки
Заголовок первого уровня H1
===========================
Заголовок второго уровня H2
---------------------------
или так
# Заголовок первого уровня H1
## Заголовок второго уровня H2
###### Заголовок шестого уровня H6
или так
# Заголовок первого уровня H1 #
## Заголовок второго уровня H2 ##
###### Заголовок шестого уровня H6 ######
Цитаты
> Это
> многострочная
> цитата
или так
> Это
многострочная
цитата
Списки
Ненумерованные:
* красный
* зеленый
* синий
или так
- красный
- зеленый
- синий
или даже так
+ красный
+ зеленый
+ синий
Нумерованные:
1. Первый
2. Второй
3. Третий
Код
Отступ в четыре пробела или один таб генерирует блок кода:
<пробел><пробел><пробел><пробел>print 'Hello, World!'
Горизонтальная линия
* * *
или так:
***
или так:
------
Строчные элементы
Ссылки
Инлайн ссылки
Это простая [ссылка](http://rukeba.com/) в тексте.
Это [ссылка](http://rukeba.com/ "Титул") с аттрибутом title.
Ссылки в справочном стиле
Это [ссылка][1] в справочном стиле.
...
...
[1]: http://rukeba.com/ "Необязательный титул"
Что бы урл в тексте стал ссылкой его нужно обрамить в < и >
По урлу <http://rukeba.com/> находится мой сайт.
Выделение
Одинарные звездочки генерируют тег <em>
это \*выделенный\* текст
Двойные звёздочки генерируют тег <strong>
это \*\*очень выделенный\*\* текст
Код в строке
Используйте функцию `printf()` для вывода.
Изображения

или в справочном стиле:
![alt-текст][2]
...
...
[2]: http://example.com/image.jpg "Необязательный титул"
Дополнительно
Экранирование
Для экранирования служебных символов маркдауна нужно использовать обратный слеш \
PEP8 коротко и по-русски
PEP8 - это стилевые правила для кода на языке Python.
- используйте 4 пробела для отступа и не используйте табы, не смешивайте их
- максимальная длина строки 79 символов; для разрыва строки используйте отступы или бэкслеш
- функции верхнего уровня и определения классов отделяйте двумя пустыми строками
- определения методов внутри класса отделяйте одной пустой строкой
- дополнительные пустые строки используйте для логической группировки методов
- кодировка файлов должна быть Latin-1, а в Питоне 3 и выше - utf-8
- каждый импортируемый модуль с новой строки
- порядок импортов: стандартные модули, third-party модули, локальные модули приложения
- пустая строка между каждой группой импортов
- избегайте лишних пробелов внутри скобок; перед запятыми, точкой с запятой и двоеточиями
- избегайте лишних пробелов перед скобками с аргументами функций и скобками с индексами
- избегайте больше чем одного пробела между операторами (= - + итд)
- используйте одиночный пробел для выделения операторов
- избегайте пробелов вокруг '=', который используется для параметров по-умолчанию и keyword аргументов
- обновляйте комментарии вместе с кодом
- пишите комментарии по-английски
- избегайте имён из одиночных l, O, I
-
для модулей и пакетов используйте короткие
всестрочныеимена -
для классов используйте
СловаНачинаютсяЗаглавнымиимена -
для функций используйте
слова_с_подчёркиваниями(илисмешанныйРегистресли так получилось исторически) -
для методов используйте
слова_с_подчёркиваниямиимена -
для внутренних методов и переменных
_подчёркивание_перед_словом -
для проверки на
Noneиспользуйтеisилиis not, не используйте операторы сравнения - используйте исключения основанные на классах -- наследованные от Exception
- используйте методы класса string вместо строковых функций
- используйте ''.startswith() и ''.endswith() вместо вырезки из строк для проверки префиксов и суффиксов
- используйте isinstance() для проверки типа
- не сравнивайте булевы переменные с True и False
