-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathIntroduction.html
More file actions
232 lines (222 loc) · 20.6 KB
/
Introduction.html
File metadata and controls
232 lines (222 loc) · 20.6 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Введение</title>
<link rel="shortcut icon" type="image/ico" href="python-logo.png"/>
<link rel="stylesheet" href="_static/classic.css" type="text/css"/>
<link rel="stylesheet" href="_static/pygments.css" type="text/css"/>
<style>
.section {
margin-left: 20px;
}
</style>
</head>
<body>
<style> body {background: #ccc;} </style>
<div style="float: left;position: absolute;top: 0px; width: 200px;height: 2400px; padding: 25px;background: #C8A98F;color: #8B4513;margin: 0px;">
<p><A href="Главная страница.html" style="color: #8B4513;font-size: 20px;text-decoration: none;" target="_blank">Главная
страница</A></p>
<p><A href="Книга.html" style="color: #8B4513;text-decoration: none;" target="_blank">Теория</A></p>
<p><A href="Обучающие видео.html" style="color: #8B4513;text-decoration: none;" target="_blank">Обучающие видео</A>
</p>
<p><A href="Exercieses.html" style="color: #8B4513;text-decoration: none;" target="_blank">Практика</A></p>
</div>
<div class="section" id="introduction" style="margin-left:270px;">
<span id="id1"></span>
<h1>Введение<a class="headerlink" href="#introduction" title="Ссылка на этот заголовок">¶</a></h1>
<p>Python один из тех редких языков программирования, которые одновременно
претендуют на звание <em>простых</em> и <em>мощных</em>. Вас приятно удивит то, как легко
можно сосредоточиться на решении поставленной задачи, а не на синтаксисе и
структуре языка, на котором вы программируете.</p>
<p>Официально Python представляют так:</p>
<blockquote>
<div>Python – это простой в освоении и мощный язык программирования. Он
предоставляет эффективные высокоуровневые структуры данных, а также простой,
но эффективный подход к объектно-ориентированному программированию. Его
элегантный синтаксис и динамическая типизация наряду с тем, что он является
интерпретируемым, делают его идеальным языком для написания сценариев и
быстрой разработки приложений в различных областях и на большинстве платформ.
</div>
</blockquote>
<p>В следующем разделе мы рассмотрим эти особенности более детально.</p>
<p>История названия</p>
<blockquote>
<div>Гвидо ван Россум, создатель языка Python, назвал его так в честь телешоу на
BBC под названием “Летающий цирк Монти Пайтона”<a class="footnote-reference" href="#id18"
id="id2">[1]</a>, а вовсе не потому, что
он любит змей, убивающих животных обвиванием своего длинного тела вокруг них
и задавливанием.
</div>
</blockquote>
<div class="section" id="python">
<h2>Особенности Python<a class="headerlink" href="#python" title="Ссылка на этот заголовок">¶</a></h2>
<div class="section" id="id3">
<h3>Простой<a class="headerlink" href="#id3" title="Ссылка на этот заголовок">¶</a></h3>
<p>Python – простой и минималистичный язык. Чтение хорошей программы на Python
очень напоминает чтение английского текста, хотя и достаточно строгого!
Такая псевдо-кодовая природа Python является одной из его самых сильных сторон.
Она позволяет вам сосредоточиться на решении задачи, а не на самом языке.</p>
</div>
<div class="section" id="id4">
<h3>Лёгкий в освоении<a class="headerlink" href="#id4" title="Ссылка на этот заголовок">¶</a></h3>
<p>Как вы увидите, на Python чрезвычайно легко начать программировать. Python
обладает исключительно простым синтаксисом, как уже отмечалось выше.</p>
</div>
<div class="section" id="id5">
<h3>Свободный и открытый<a class="headerlink" href="#id5" title="Ссылка на этот заголовок">¶</a></h3>
<p>Python – это пример свободного и открытого программного обеспечения – <em>FLOSS</em>
(Free/Libré and Open Source Software). Проще говоря, вы имеете право свободно
распространять копии этого программного обеспечения, читать его исходные тексты,
вносить изменения, а также использовать его части в своих программах. В основе
свободного ПО лежит идея сообщества, которое делится своими знаниями.
Это одна из причин, по которым Python так хорош: он был создан и постоянно
улучшается сообществом, которое просто хочет сделать его лучше.</p>
</div>
<div class="section" id="id6">
<h3>Язык высокого уровня<a class="headerlink" href="#id6" title="Ссылка на этот заголовок">¶</a></h3>
<p>При написании программы на Python вам никогда не придётся отвлекаться на
такие низкоуровневые детали, как управление памятью, используемой вашей
программой, и т.п.</p>
</div>
<div class="section" id="id7">
<h3>Портируемый<a class="headerlink" href="#id7" title="Ссылка на этот заголовок">¶</a></h3>
<p>Благодаря своей открытой природе, Python был портирован на много платформ (т.е.
изменён таким образом, чтобы работать на них). Все ваши программы смогут
запускаться на любой из этих платформ без каких-либо изменений, если только
вы избегали использования системно-зависимых функций.</p>
<p>Python можно использовать в GNU/Linux, Windows, FreeBSD, Macintosh, Solaris,
OS/2, Amiga, AROS, AS/400, BeOS, OS/390, z/OS, Palm OS, QNX, VMS, Psion,
Acorn RISC OS, VxWorks, PlayStation, Sharp Zaurus, Windows CE и даже на
PocketPC!</p>
<p>Вы можете даже использовать такую платформу, как <a class="reference external" href="http://kivy.org/">Kivy</a>
для создания игр для iOS (iPhone, iPad) и Android.</p>
</div>
<div class="section" id="id8">
<h3>Интерпретируемый<a class="headerlink" href="#id8" title="Ссылка на этот заголовок">¶</a></h3>
<p>Это требует некоторого пояснения.</p>
<p>Программа, написанная на компилируемом языке программирования, как например, C
или C++, преобразуется из исходного языка (т.е. C или C++) в язык, понятный
компьютеру (бинарный код, т.е. нули и единицы) при помощи компилятора с
применением разнообразных флагов и параметров. Когда вы запускаете такую
программу, компоновщик/загрузчик копирует программу с диска в оперативную память
и запускает её.</p>
<p>Python же, напротив, не требует компиляции в бинарный код. Программа просто
<em>выполняется</em> из исходного текста. Python сам преобразует этот исходный текст
в некоторую промежуточную форму, называемую байткодом, а затем переводит его
на машинный язык и запускает. Всё это заметно облегчает использование Python,
поскольку нет необходимости заботиться о компиляции программы, подключении и
загрузке нужных библиотек и т.д. Вместе с тем, это делает программы на Python
намного более переносимыми, так как достаточно их просто скопировать на другой
компьютер, и они работают!</p>
</div>
<div class="section" id="id9">
<h3>Объектно-ориентированный<a class="headerlink" href="#id9" title="Ссылка на этот заголовок">¶</a></h3>
<p>Python поддерживает как процедурно-ориентированное, так и
объектно-ориентированное программирование. В <em>процедурно-ориентированных</em> языках
программы строятся на основе процедур или функций, которые представляют собой
просто-напросто многократно используемые фрагменты программы. В
<em>объектно-ориентированных</em> языках программирования программы строятся на основе
объектов, объединяющих в себе данные и функционал. Python предоставляет простые,
но мощные средства для ООП, особенно в сравнении с такими большими языками
программирования, как C++ или Java.</p>
</div>
<div class="section" id="id10">
<h3>Расширяемый<a class="headerlink" href="#id10" title="Ссылка на этот заголовок">¶</a></h3>
<p>Если вам нужно, чтобы некоторая критическая часть программы работала очень
быстро или вы вынуждены скрыть часть алгоритма, вы можете написать эту часть
программы на C или C++, а затем вызывать её из программы на Python.</p>
</div>
<div class="section" id="id11">
<h3>Встраиваемый<a class="headerlink" href="#id11" title="Ссылка на этот заголовок">¶</a></h3>
<p>Python можно встраивать в программы на C/C++, чтобы предоставлять возможности
написания сценариев их пользователям.</p>
</div>
<div class="section" id="id12">
<h3>Обширные библиотеки<a class="headerlink" href="#id12" title="Ссылка на этот заголовок">¶</a></h3>
<p>Стандартная библиотека Python просто огромна. Она может помочь в решении самых
разнообразных задач, связанных с использованием регулярных выражений,
генерированием документации, проверкой блоков кода, распараллеливанием
процессов, базами данных, веб-браузерами, CGI, FTP, электронной почтой, XML,
XML-RPC, HTML, WAV файлами, криптографией, GUI (графическим интерфейсом
пользователя) и другими системно-зависимыми вещами. Помните, что всё это
доступно абсолютно везде, где установлен Python. В этом заключается философия
Python “Всё включено”.</p>
<p>Кроме стандартной библиотеки, существует множество других высококачественных
библиотек, которые можно найти в
<a class="reference external" href="http://pypi.python.org/pypi">Каталоге пакетов Python</a></p>
<p>Резюме</p>
<blockquote>
<div>Python – очень увлекательный и мощный язык. Он имеет хорошее соотношение
производительности и возможностей, что делает написание программ на нём
одновременно интересным и лёгким.
</div>
</blockquote>
</div>
</div>
<div class="section" id="python-2-3">
<span id="python-2-versus-3"></span>
<h2>Python 2 против 3<a class="headerlink" href="#python-2-3" title="Ссылка на этот заголовок">¶</a></h2>
<p>Если вас не интересует разница между Python 2 и Python 3, вы можете пропустить
этот раздел. Но в любом случае помните, какую версию вы используете.</p>
<p>В 2008 году эта книга была переписана для Python 3. Это была одна из первых
книг, посвящённых Python 3. Однако, к сожалению, это привело к путанице среди
пользователей, пытавшихся изучать Python 2 по версии книги для Python 3 и
наоборот. Тем не менее, мир понемногу мигрирует на Python 3.</p>
<p>Так что да, в этой книге вы будете учиться программировать на Python 3, даже
если в конечном счёте планируете использовать Python 2. <em>Помните, что как
только вы как следует усвоите и научитесь пользоваться любым из них, вы также
сможете легко освоить разницу между ними и адаптироваться. Самое сложное
заключается в обучении программированию и понятии основной части языка Python.
Это и будет нашей целью в настоящей книге, а как только вы её достигнете, вы
сможете запросто использовать Python 2 или Python 3 в зависимости от конкретной
ситуации.</em></p>
<p>Изучить разницу между Python 2 и Python 3 в деталях можно на
<a class="reference external" href="https://wiki.ubuntu.com/Python/3">странице Ubuntu wiki, посвящённой
Python 3</a>.</p>
</div>
<div class="section" id="id14">
<h2>Что говорят программисты<a class="headerlink" href="#id14" title="Ссылка на этот заголовок">¶</a></h2>
<p>Интересно, что такие великие хакеры, как Эрик Рэймонд, говорят о Python:</p>
<ol class="arabic simple">
<li><em>Эрик С. Рэймонд</em> – автор работы “Собор и Базар”, а также человек, который
ввёл термин “Open Source”. Он говорит, что
<a class="reference external" href="http://www.linuxjournal.com/article.php?sid=3882">Python стал его
любимым языком программирования</a>.
Эта статья и вдохновила меня на пробу пера в Python.
</li>
<li><em>Брюс Экель</em> – автор знаменитых книг “Думаем на Java” и “Думаем на С++”.
Он утверждает, что ни на одном языке программирования его работа не была
столь эффективной, как на Python. Кроме того, он считает, что Python – это,
пожалуй, единственный язык, стремящийся облегчить жизнь программисту.
Подробнее можно прочитать в
<a class="reference external" href="http://www.artima.com/intv/aboutme.html">его полном интервью</a>.
</li>
<li><em>Питер Норвиг</em> – широко известный автор Lisp, а также директор по качеству
поиска в Google (спасибо Гвидо ван Россуму за это замечание). Он говорит,
что Python всегда был неотъемлемой частью Google. Вы можете убедиться в этом,
заглянув на страницу <a class="reference external" href="http://www.google.com/jobs/index.html">Google
Jobs</a>,
на которой владение Python указано как требование для разработчиков
программного обеспечения.
</li>
</ol>
</div>
<div class="section" id="id17">
<h2>Примечания<a class="headerlink" href="#id17" title="Ссылка на этот заголовок">¶</a></h2>
<table class="docutils footnote" frame="void" id="id18" rules="none">
<colgroup>
<col class="label"/>
<col/>
</colgroup>
<tbody valign="top">
<tr>
<td class="label"><a class="fn-backref" href="#id2">[1]</a></td>
<td>“Monty Python’s Flying Circus” (<em>прим.перев.</em>)</td>
</tr>
</tbody>
</table>
</div>
</div>
</body>
</html>