The Python Language Reference / Справочник по языку Python: 1. Introduction
| Английский оригинал | Перевод на русский | |
|---|---|---|
Сожалеем, но текст оригинала доступен только зарегистрированным пользователям. |
<font style="text-align: right; font-weight: bold;">Введение</font> Droidos 19.09.10 в 17:43 |
|
|
Это справочное руководство описывает язык программирования Python. Оно не предназначено для использования в качестве учебника. starius 05.03.12 в 16:55 |
||
|
Хотя я постараюсь быть как можно более точен, я решил использовать английский без alvadia3 09.09.13 в 10:23 |
||
|
Опасно добавлять в документ с описание языка слишком много деталей реализации. Реализация может измениться, а различные реализации одного языка могут работать по разному. С другой стороны, CPython - это широко распространенная реализация языка Python (хотя альтернативные реализации продолжают завоевывать популярность) и его особенности иногда заслуживают рассмотрения, в особенности там, где реализация накладывает дополнительные ограничения. Поэтому, в тексте вы иногда найдете короткие "заметки по реализации". Viktorianka 24.12.09 в 08:47 |
||
|
Каждая реализация Python поставляется со встоенными стандартыми модулями. Они задокументированы в руководстве The Python Standard Library. Встроенные модули упоминаются в том случае, когда они оказывают существенное влияние на определение языка. Viktorianka 24.12.09 в 08:50 |
||
|
1.1. Альтернативные реализации RedFox 13.12.09 в 07:07 |
||
|
Среди прочих наиболее известны следующие реализации: RedFox 13.12.09 в 07:06 |
||
|
CPython
RedFox 13.12.09 в 07:07 |
||
|
Jython RedFox 13.12.09 в 07:09 |
||
|
Python для .NET. Viktorianka 24.12.09 в 08:54 |
||
|
IronPython Viktorianka 24.12.09 в 08:59 |
||
|
PyPy Viktorianka 24.12.09 в 09:03 |
||
|
Каждая из этих реализаций в чем-то отличается от языка, описанного в этом руководстве или представляет дополнительную информацию помимо того, что имеется в стандартной документации Python. Пожалуйста обращайтесь к документации по конкретной реализации языка, чтобы понять что еще нужно знать об используемой вами реализации. Viktorianka 24.12.09 в 09:07 |
||
|
1.2 Нотация Viktorianka 24.12.09 в 09:14 |
||
|
name ::= lc_letter (lc_letter | "_")* Viktorianka 24.12.09 в 09:44 <code> name ::= lc_letter (lc_letter | "_")* Droidos 19.09.10 в 17:40 |
||
|
В первой строке сказано, что Name (имя) - это lc_letter за которой следует ноль или более lc_letter и значок подчеркивания. lc_letter - это в свою очередь одиночный символ между 'a' и 'z'. ( Это правило фактически относится к именам, определенным по лексическим и граматическим правилам в этом документе). Viktorianka 24.12.09 в 09:18 |
||
|
Каждое правило начинается с имени ( которое представляет имя, опеределенное правилом) и ::=. Вертикальная черта (|) используется для разделения альтернативных вариантов, это наименьший связующий оператор в этой нотации. Звезда (*) обозначает 0 или более повторений предшествующего элемента; аналогично, плюс (+) обозначает 1 или более повторений, фраза, заключенная в квадратные скобки [] обозначает 0 или 1 вхождение (другими словами, фраза в квадратных скобках является необязательной). Пробелы используются только для разделения токенов. Правила обычно располагаются в одной строке; правила с несколькими альтернативами могут быть оформлены иначе, каждая линия после первой начинается с вертикальной черты. Viktorianka 24.12.09 в 09:27 |
||
|
В лексических определениях (таких как в примере выше), мспользуются еще 2 соглашения. Два буквенных символа, разделеные тремя точками обозначают любой символ из заданного интервала ASCII символов. Фраза в треугольных скобках дает неформальное описание определяемого символа, например она может использоваться для описания значения 'управляющих символов', если это необходимо. Viktorianka 24.12.09 в 09:37 |
||
|
Несмотря на то, что используемая нотация в основном одинакова, следует различать значение лексических и синтаксических определений: лексические определения оперируют отдельными символами в качестве входного источника , в то время как синтаксические определения оперируют с потоками токенов, созданными лексическим анализом. Все использования BNF в следующей главе - лексические определения, в последующих главах - синтаксический определения. Viktorianka 24.12.09 в 09:43 |
