Практикум j практическое примщенше численных методов



Download 2,15 Mb.
bet15/83
Sana06.07.2022
Hajmi2,15 Mb.
#750238
TuriПрактикум
1   ...   11   12   13   14   15   16   17   18   ...   83
Bog'liq
python

lambda функции
Python разрешает создание анонимных функций (например, функции, ко­торые не связаны с именем) во время выполнения, используя конструкцию lambda. Объекты функций в этом случае создаются в форме выражений.
За ключевым словом lambda следуют один или более аргументов и далее, вслед за двоеточием, находится выражение:
lambda argl, arg2, argN: выражение.
Разницу между обычным определением функции (f 1) и lambda функции (f2) наиболее просто пояснить на примере работы программы
def f1 (х):
return х**2
f2 = lambda х: х**2 print f1(4), f2(4)
Такие конструкции удобны для создания малых функций и позволяют встра­ивать определения функций в программный код, который их использует.
Пространство имен в Python
С каждой точкой программы можно связать три пространства имен: локаль­ное, глобальное и встроенное. Пространство имен определяет отображение имен в объекты.
Пространства имен создаются в различные моменты времени и имеют раз­ную продолжительность жизни. Пространство встроенных имен создается при запуске интерпретатора и существует все время его работы. Глобальное пространство имен модуля создается, когда он считывается, и, обычно, также существует до завершения работы интерпретатора. Локальное пространство имен функции создается при вызове функции и удаляется при выходе из нее.
Имена, определяемые внутри тела функции, видны только программному коду внутри тела функции. К этим именам нельзя обратиться за пределами функции. Свойство глобальности во вмещающем модуле переменной внутри тела функции обеспечивается использованием инструкции global.
Поиск имен ведется последовательно в четырех областях видимости: локаль­ной, затем в объемлющей функции (если таковая имеется), затем в глобаль­ной и, наконец, во встроенной.

  1. Модули

Программа в Python, создание и использование модулей, поиск модуля, стан­дартные модули, пакеты моделей.
Программа в Python
При модульном подходе к программированию большая задача разбивается па несколько более мелких, каждую из которых (в идеале) решает отдельный модуль. Важно составить такую композицию модулей, которая позволила бы свести к минимуму связи между ними. Набор функций, имеющий множество связей между своими элементами, логично расположить в одном модуле.
Программа па языке Python организована как один главный файл, к которо­му могут подключаться дополнительные файлы. Каждый такой файл пред­ставляет собой отдельный модуль, содержащий инструкции. Именно такая процедура реализуется при работе в среде разработки NetBeans IDE.
Модули для использования в программах на языке Python по своему происхо­ждению делятся на обычные (написанные па Python) и модули расширения, написанные па другом языке программирования (например, на С).
Для включения модуля в программу па языке Python он должен быть импор­тирован главным файлом, или другими файлами программы.
Создание и использование модулей
Для создания модуля достаточно ввести программный код па языке Python в текстовый файл и сохранить его с расширением .ру. Такой файл по умолча­нию считаться модулем Python. Все имена, которым выполнено присваивание на верхнем уровне модуля, станут его атрибутами (именами, ассоциирован­ными с объектом модуля) и будут доступны для использования клиентами.
При работе в NetBeans IDE для добавление модуля в проект выбирается ко­манда File | New File и тип файла Python. Далее в режиме диалога задается имя файла и его расположение.
Создадим, например, модуль
% module1 (file modulel.py) def times(x, y): return x * у
def add(x, у): return х + у
который содержи'!1 две функции: times и add.
Будем использовать этот модуль в главном файле main.py. Для этого при­меняется инструкция import:
% main (file main.py) import module1
print modulel.add(2, 3), modulel.times(’well ’, 4)
После запуска программы выводиться строка 5 well well well well
В результате выполнения инструкции import в главном модуле становиться доступным имя (modulel), которое ссылается на полный объект модуля. При обращении к его атрибутам (функциям times и add) необходимо использовать имя модуля сточкой (modulel .add () и modulel .times ()).
Для изменения имени ссылки на импортируемый модуль используется кон­струкция import ... as. Результатом работы программы
У, main (file main.py) import modulel as ml s = ml.add(’Import ’, ’as ’) print ml.add(s, ’ml’)
будет
Import as ml
Иногда бывает более удобно импортировать модуль не целиком, а отдельные имена из его области видимости. В этом случае используется инструкция from . .. import. В нашем примере
в/0 main (file main.py) from modulel import add print add(’Import ’, ’add’)
Импортируемое имя (add) копируется в область видимости, в которой на­ходится сама инструкция from ... import, и его можно использовать без указания имени вмещающего модуля.
Имеется специальная форма инструкции from . . . import с использованием символа * вместо списка импортируемых имен. В этом случае импортируются все имена:
°/0 main (file main.py) from modulel import *
print add(’Import ’all’), times(’!’, 3)
;Гш:Щ'Щ:Й1;Я ^ :v ■ "Ё:: tilJ ■■) Д:Й:; ti::; г!И:Л: :i: ^ ;V ..:,:

Download 2,15 Mb.

Do'stlaringiz bilan baham:
1   ...   11   12   13   14   15   16   17   18   ...   83




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©hozir.org 2024
ma'muriyatiga murojaat qiling

kiriting | ro'yxatdan o'tish
    Bosh sahifa
юртда тантана
Боғда битган
Бугун юртда
Эшитганлар жилманглар
Эшитмадим деманглар
битган бодомлар
Yangiariq tumani
qitish marakazi
Raqamli texnologiyalar
ilishida muhokamadan
tasdiqqa tavsiya
tavsiya etilgan
iqtisodiyot kafedrasi
steiermarkischen landesregierung
asarlaringizni yuboring
o'zingizning asarlaringizni
Iltimos faqat
faqat o'zingizning
steierm rkischen
landesregierung fachabteilung
rkischen landesregierung
hamshira loyihasi
loyihasi mavsum
faolyatining oqibatlari
asosiy adabiyotlar
fakulteti ahborot
ahborot havfsizligi
havfsizligi kafedrasi
fanidan bo’yicha
fakulteti iqtisodiyot
boshqaruv fakulteti
chiqarishda boshqaruv
ishlab chiqarishda
iqtisodiyot fakultet
multiservis tarmoqlari
fanidan asosiy
Uzbek fanidan
mavzulari potok
asosidagi multiservis
'aliyyil a'ziym
billahil 'aliyyil
illaa billahil
quvvata illaa
falah' deganida
Kompyuter savodxonligi
bo’yicha mustaqil
'alal falah'
Hayya 'alal
'alas soloh
Hayya 'alas
mavsum boyicha


yuklab olish