- •Міністерство освіти і науки україни
- •Укладачі: Романюк а. Б., канд. Техн. Наук, ст. Викладач
- •1.2 Функції накопичення
- •Функція використовує рекурсію – техніку яка буде розглядатися в подальшому. Перестановки слів у наборах слів корисно використовувати при створенні даних для тестування граматик.
- •1.3 Функції вищого рівня
- •1.4 Зазначені (поіменовані) аргументи.
- •2. Розробка програми
- •2.1 Структура модуля в Python
- •2.2 Багатомодульні програми
- •2.3 Помилки
- •2.4 Техніка налагодження (зневаджування) програм
- •3. Розробка алгоритму програми
- •3.1 Рекурсія
- •3.2 Динамічне програмування
- •4. Приклади бібліотек Python
- •4.1 Matplotlib
- •4.2 NetworkX
- •4.3 Csv
- •4.4 NumPy
- •4.5 Інші бібліотеки
- •Порядок виконання роботи
- •Зміст звіту
- •Інтернет посилання
- •Методичні вказівки
- •Укладачі: Романюк Андрій Богданович
Міністерство освіти і науки україни
НАЦІОНАЛЬНИЙ УНІВЕРСИТЕТ “ЛЬВІВСЬКА ПОЛІТЕХНІКА”
іНСТИТУТ КОМП’ютерних НАУК та ІНФОРМАЦІЙНИХ ТЕХНОЛОГІЙ
Кафедра “Системи автоматизованого проектування ”
ВИВЧЕННЯ БІБЛІОТЕКИ ПРИКЛАДНИХ ПРОГРАМ NLTK, ДЛЯ ОПРАЦЮВАННЯ ТЕКСТІВ ПРИРОДНОЮ МОВОЮ.
СТРУКТУРНЕ ПРОГРАМУВАННЯ МОВОЮ PYTHON (частина2).
Методичні вказівки до лабораторної роботи № 8
з дисципліни “Комп’ютерна лінгвістика ”
для студентів спеціальності 7.030.505 “Прикладна лінгвістика ”
та магістрів за фахом 8.030.505 “Прикладна лінгвістика ”.
Затверджено
на засіданні кафедри
“Системи автоматизованого проектування ”
Протокол № 8 від 21.XI.2005 р.
на засіданні методичної ради ІКНІ
Протокол № 4-05/06 від 1.XII.2005 р.
ВАК № 1769 від 12.XII.2005 р.
Львів-2009
ВИВЧЕННЯ БІБЛІОТЕКИ ПРИКЛАДНИХ ПРОГРАМ NLTK, ДЛЯ ОПРАЦЮВАННЯ ТЕКСТІВ ПРИРОДНОЮ МОВОЮ. СТРУКТУРНЕ ПРОГРАМУВАННЯ МОВОЮ PYTHON (частина2).Методичні вказівки до лабораторної роботи №8з дисципліни “Комп’ютерна лінгвістика ” для студентів спеціальності 7.030.505 “Прикладна лінгвістика” та магістрів за фахом 8.030.505 “Прикладна лінгвістика” для стаціонарної та заочної форм навчання/Укл. А.Б.Романюк. - Львів: Національний університет ”Львівська політехніка”, 2009. - 22с.
Укладачі: Романюк а. Б., канд. Техн. Наук, ст. Викладач
Відповідальний за випуск: Лобур М. В., доктор технічних наук, професор
Рецензенти: Каркульовський В. І., канд. техн. наук, доцент
Шуневич Б.І., канд. філол. наук, доцент.
МЕТА РОБОТА
Вивчення основ програмування на мові Python.
Вивчення основ структурного програмування мовою Python.
Повторення та закріплення знань отриманих при виконанні попередніх лабораторних робіт.
Покращення загальних навичок у програмуванні.
КОРОТКІ ТЕОРЕТИЧНІ ВІДОМОСТІ
1. Складні випадки використання функцій
1.1 Функція, як аргумент
Аргументи функцій, які розглядалися в попередніх лабораторних роботах, були простими об’єктами, такими як стрічка, або структурованими, такими як список. В Python аргументом функції також може бути і інша функція.В наступному прикладі показано, яким чином вбудована функціяlen() або розроблена функціяlast_letter() передаються, як аргументи іншій функції:
|
Об’єкти len та last_letter передаються у функцію як списки та словники (тип даних словник буде розглянуто пізніше). Зауважимо, що дужки після імені функції використовуються тільки при її виклику, а якщо функція трактується, як об’єкт (аргумент іншої функції) то дужки опускаються.
Python підтримує ще один спосіб визначення функцій як аргументів іншої функції , це так званий лямбда-вираз (анонімна функція). Спробуємо виконати дії функціїlast_letter() без її створення і відповідно не використовуючи її імя. За допомогою лямбда-виразу отримаємо наступний результат:
|
Наступний приклад ілюструє передавання функції до функціїsorted(). У випадку виклику функціїsorted() з одним аргументом#1(сортування списку) ця функція використовує для порівняння вбудовану функціюcmp() (про що свідчить#2). Звичайно, можна, як аргумент, використати і власну функцію, наприклад функцію сортування в порядку спадання довжин елементів.
|