Роман Сузі - Мова програмування Python

Мова програмування Python

Лекція # 1: Введення в програмування на мові Python.

У цій лекції йтиметься про синтаксис мови Python для основних алгоритмічних конструкцій, литералов, виразів. Буде приведено опис вбудованих типів даних, а також зроблена спроба розглянути деякі питання загальноприйнятого в Python стилю програмування.

Що таке Python?

Про Python (краще вимовляти «пітон», хоча дехто каже «пайтон») - предмет цього дослідження, найкраще каже творець цієї мови програмування, голландець Гвідо ван Россум:

«Python - інтерпретована, об'єктно-орієнтована високорівнева мова програмування з динамічною семантикою. Вбудовані високорівневі структури даних в поєднанні з динамічними типізацією і зв'язуванням роблять мову привабливим для швидкої розробки додатків (RAD, Rapid Application Development). Крім того, його можна використовувати в якості сценарного мови для зв'язку програмних компонентів. Синтаксис Python простий у вивченні, в ньому надається особливе значення читання коду, а це скорочує витрати на супровід програмних продуктів. Python підтримує модулі та пакети, заохочуючи модульність і повторне використання коду. Інтерпретатор Python і велика стандартна бібліотека доступні безкоштовно у вигляді вихідних і виконуваних кодів для всіх основних платформ і можуть вільно поширюватися. »

У процесі вивчення буде розкритий сенс цього визначення, а зараз досить знати, що Python - це універсальна мова програмування. Він має свої переваги і недоліки, а також сфери застосування. В поставку Python входить велика стандартна бібліотека для вирішення широкого кола завдань. В Інтернеті доступні якісні бібліотеки для Python по різних предметних областях: засоби обробки текстів і технології Інтернет, обробка зображень, інструменти для створення додатків, механізми доступу до баз даних, пакети для наукових обчислень, бібліотеки побудови графічного інтерфейсу і т.п. Крім того, Python має досить прості засоби для інтеграції з мовами C, C ++ (і Java) як шляхом вбудовування (embedding) інтерпретатора в програми на цих мовах, так і навпаки, за допомогою використання бібліотек, написаних на цих мовах, в Python-програмах. Мова Python підтримує кілька парадигм програмування: імперативне (процедурний, структурний, модульний підходи), об'єктно-орієнтоване і функціональне програмування.

Можна вважати, що Python - це ціла технологія для створення програмних продуктів (і їх прототипів). Вона доступна майже на всіх сучасних платформах (як 32-бітових, так і на 64-бітних) з компілятором C і на платформі Java.

Може здатися, що, в програмної індустрії немає місця для чогось іншого крім C / C ++, Java, Visual Basic, C #. Однак це не так. Можливо, завдяки цьому курсу лекцій і практичних занять у Python з'являться нові прихильники, для яких він стане незамінним інструментом.

Як описати мову?

У цій лекції не ставиться цілі систематично описати Python: для цього існує оригінальне довідкове керівництво. Тут пропонується розглянути мову одночасно в декількох аспектах, що досягається набором прикладів, які дозволять швидше долучитися до реального програмування, ніж в разі суворого академічного підходу.

Однак варто звернути увагу на правильний підхід до опису мови. Створення програми - це завжди комунікація, в якій програміст передає комп'ютера інформацію, необхідну для виконання останнім дій. Те, як ці дії розуміє програміст (тобто «сенс»), можна назвати семантикою. Засобом передачі цього сенсу є синтаксис мови програмування. Ну а те, що робить інтерпретатор на підставі переданого, зазвичай називають прагматикою. При написанні програми дуже важливо, щоб в цьому ланцюжку не виникало збоїв.

Синтаксис - повністю формалізована частина: його можна описати на формальній мові синтаксичних діаграм (що і робиться в довідкових посібниках). Виявом прагматики є сам інтерпретатор мови. Саме він читає записане відповідно до синтаксисом «послання» і перетворює його в дії по закладеному в ньому алгоритму. Неформальним компонентом залишається тільки семантика. Саме в перекладі сенсу в формальний опис і криється найбільша складність програмування. Синтаксис мови Python має потужні засоби, які допомагають наблизити розуміння проблеми програмістом до її «розуміння» інтерпретатором. Про внутрішній устрій Python буде говоритися в одній із завершальних лекцій.

Історія мови Python

Створення Python було розпочато Гвідо ван Россум (Guido van Rossum) в 1991 році, коли він працював над розподіленої ОС Амеба. Йому був потрібний розширюваний мову, який би забезпечив підтримку системних викликів. За основу були взяті ABC і Модула-3. Як назва він вибрав Python в честь комедійних серій BBC «Літаючий цирк Монті-Пітона», а зовсім не за назвою змії. З тих пір Python розвивався за підтримки тих організацій, в яких Гвідо працював. Особливо активно мову вдосконалюється в даний час, коли над ним працює не тільки команда творців, а й ціле співтовариство програмістів з усього світу. І все-таки останнє слово про напрямок розвитку мови залишається за Гвідо ван Россум.

Програма на Python

Програма на мові Python може складатися з одного або декількох модулів. Кожен модуль являє собою текстовий файл в кодуванні, сумісної з 7-бітної кодуванням ASCII. Для кодувань, що використовують старший біт, необхідно явно вказувати назву кодування. Наприклад, модуль, коментарі або рядкові літерали якого записані в кодуванні KOI8-R, повинен мати в першій або другій рядку наступну специфікацію:

# - * - coding: koi8-r - * -

Завдяки цій специфікації інтерпретатор Python знатиме, як коректно переводити символи литералов Unicode-рядків в Unicode. Без цього рядка нові версії Python будуть видавати попередження на кожен модуль, в якому зустрічаються коди з встановленим восьмим бітом.

Про те, як робити програму модульної, стане відомо в наступних лекціях. У прикладах нижче використовуються як фрагменти модулів, записаних в файл, так і фрагменти діалогу з інтерпретатором Python. Останні відрізняються характерним запрошенням >>>. Символ решітка (#) відзначає коментар до кінця рядка.

Програма на Python, з точки зору інтерпретатора, складається з логічних рядків. Одна логічна рядок, як правило, розташовується в одному фізичному, але довгі логічні рядки можна явно (за допомогою зворотного косою риси) або неявно (всередині дужок) розбити на кілька фізичних:

print a, "- дуже довга рядок, яка не поміщається в", \

80, "знакоместу"

Примітка:

У всіх прикладах в основному використовується «офіційний» стиль оформлення коду на Python відповідно до документа «Python Style Guide», який можна знайти на сайті http://python.org

Основні алгоритмічні конструкції

Передбачається, що слухачі вже вміють програмувати хоча б на рівні шкільної програми, і тому цілком достатньо провести паралелі між алгоритмічними конструкціями і синтаксисом Python. Крім того, Python як правило не підводить інтуїцію програміста (по крайней мере, науці добре відомі типові пастки початківців програмістів на Python), тому вивчати синтаксис Python краще на прикладах, а не за допомогою синтаксичних діаграм або форм Бекуса-Наура.

послідовність операторів

Послідовні дії описуються послідовними рядками програми. Варто, щоправда, додати, що в програмах важливі відступи, тому всі оператори, що входять до послідовність дій, повинні мати один і той же відступ:

a = 1

b = 2

a = a + b

b = a - b

a = a - b

print a, b

Що робить цей приклад? Перевірити свою здогадку можна за допомогою інтерактивного режиму інтерпретатора Python.

При роботі з Python в інтерактивному режимі як би вводиться одна велика програма, що складається з послідовних дій. В наведеному вище прикладі використані оператори присвоювання і оператор print.

Оператор умови і вибору

Зрозуміло, одними тільки послідовними діями в програмуванні не обійтися, тому при написанні алгоритмів використовується ще й розгалуження:

if a> b:

c = a

Кінець ознайомчого уривка

СПОДОБАЛАСЯ КНИГА?

Мова програмування Python   Лекція # 1: Введення в програмування на мові Python
Ця книга коштує менше ніж чашка кави!
ДІЗНАТИСЬ ЦІНУ

Що таке Python?
Як описати мову?

Дополнительная информация

rss
Карта