Разработка динамических сайтов
SEO услуги
Управление контекстной рекламой

Вход на хостинг

Имя пользователя:*

Пароль пользователя:*

IT-новости

20.04.2016 iPhone 2017 года поместят в водонепроницаемый корпус из стекла

Линейка iPhone в новом году серьезно поменяется. В этом уверен аналитический исследователь Мин Чи Ку......

подробнее

30.07.2015 Ищем уникальный контент для сайта

Ищем уникальный контент для сайта Без уникального контента Ваш сайт обречен на то, что его страницы......

подробнее

11.05.2015 Распространённые ошибки разработчиков сайтов

Не секрет, что в сети Интернет насчитывается миллионы сайтов, и каждый день появляются тысячси новых......

подробнее

Hello from Python.

Вы находитесь в C:myworkspython est.

Нажмите Enter...

(0) – первая строка указывает интерпретатору, в какой кодировке следует рассматривать приведенный ниже текст. Для ASCII-текста она не требуется, но поскольку мы используем кириллицу, то без нее интерпретатор будет каждый раз выдавать предупреждение «DeprecationWarining: Non-ASCII character…».

(1, b) – комментарии, как и принято в UNIX, предваряются символом «#». Для многострочных комментариев часто используют обрамление текста с помощью утроенных кавычек: «’’’ multiline comment ’’’». Этот же прием можно использовать для временного исключения участков кода на стадии отладки.

(2) – третья строка импортирует модуль, в данном случае «os», который является стандартным для Python и содержит функции для работы с конкретной операционной системой. В нашем примере из этого модуля мы используем функцию getcwd(), возвращающую текущий каталог.

(3) – с этой строки начинается определение функции «hello». В скобках указывается список параметров, причем даже если параметров нет, скобки обязательно должны быть. Двоеточие начинает блок кода, содержащий тело функции. В отличие от таких языков, как C или Perl, в Python блок операторов (определения функций, циклы, ветвления) не обрамляется операторными скобками, а выделяется отступом. Отступ может быть выполнен любым количеством символов «пробел», но все операторы блока должны иметь одинаковый отступ. Первая же строка, выполненная без отступа, рассматривается как окончание блока операторов.

Здесь хочется сделать отступление и немного пофилософствовать о стиле программирования. Тот же Perl позволяет кодировать как угодно – хоть в одну строку. С одной стороны, каждый программист со временем вырабатывает тот стиль, который ему более удобен. При переходе на Perl с других языков можно перенести и устоявшийся стиль написания кода. Но с другой стороны тут есть и вероятность, что кто-то другой будет очень долго воспроизводить «не-ASCII»-звуки, пытаясь разобраться в исходниках программы, написанной как-нибудь экзотически. Язык Python в этом смысле более требователен к разработчику, унифицируя тем самым стиль кодирования и упрощая работу тем, кому придется работать с этим кодом в будущем. Однако продолжим…

(4, 5) – оператор «print» выводит на экран значение строковой переменной или непосредственно строку, заключенную в кавычки или апострофы. Вставка в строку переменных выполняется в стиле оператора printf языка Си, за тем исключением, что список интегрируемых переменных задается после символа «%» как кортеж (то есть через запятую и в круглых скобках). Если переменная одна, как в нашем случае, скобки можно опустить.

(6) – пустые строки, естественно, допускаются.

(7, a) – оператор ветвления пояснять, думаю, не нужно. Как и обычно, задаются условие и блок операторов (выделяется отступом), которые будут выполнены, если условие истинно. В противном случае, если задан далее оператор «else», будет выполнен его блок операторов. Если команда в блоке одна, допускается указывать ее непосредственно после двоеточия в этой же строке (хотя это и противоречит официальному стилю программирования). Оператор «pass» ничего не делает, и строго говоря, строка «a» в нашем случае совершенно не нужна.

Чуть подробнее следует остановиться на самом условии, указанном в строке (7): __name__== ‘__main__’. Встроенная переменная __name__ возвращает имя программы, если вызывается как модуль из другого сценария (об этом – чуть ниже) либо строку «__main__», если файл запускается непосредственно. То есть код строк «8-9» будет выполнен только тогда, когда файл first.py запускается из командной строки. Зачем это сделано, будет объяснено далее.

(8) – здесь мы просто вызываем описанную ранее функцию «hello», передав ей текстовую строку в качестве аргумента.

(9) – функция raw_input считывает со стандартного потока ввода stdin строку, завершающуюся символом перевода строки. В данном случае этот оператор используется исключительно для задержки вывода, чтобы консольное окно не закрывалось сразу.

Теперь рассмотрим еще одну концепцию Python – повторное использование кода. Конечно, это позволяет делать любой язык программирования, но в Python повторное использование положено в основу синтаксиса, и все получается очень легко и естественно.

Для примера напишем еще один сценарий:

(0) import first

(1) first.hello('Hi')

Запустив его, мы получим такой вывод:

C:myworkspython est>python test.py


Предыдущая страницаОглавлениеСледующая страница
 
[001] [002] [003] [004] [005] [006] [007] [008] [009] [010] [011] [012] [013] [014] [015] [016] [017] [018] [019] [020]
[021] [022] [023] [024] [025] [026] [027] [028] [029] [030] [031] [032] [033] [034] [035] [036] [037] [038] [039] [040]
[041] [042] [043] [044] [045] [046] [047] [048] [049] [050] [051] [052] [053] [054] [055] [056] [057] [058] [059] [060]
[061] [062] [063] [064] [065] [066] [067] [068] [069] [070] [071] [072] [073] [074] [075] [076] [077] [078] [079] [080]
[081] [082] [083] [084] [085] [086] [087] [088] [089] [090] [091] [092] [093] [094] [095] [096] [097] [098] [099] [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]

+7 (831) 413-63-27
ООО Дельта-Технология ©2007 - 2023 год
Нижний Новгород, ул. Дальняя, 17А.
Rambler's Top100