Математический анализ. 3е издание
Скачать 4.86 Mb.
|
832 Алфавитный указатель SyntaxError, 715 вложенные обработчики исключений, 751 вложение в потоке управления, 753 синтаксическое вложение, 754 возбуждение и обработка собственных исключений, 722 встроенные ArithmeticError, 742 Exception, 742 OverflowError, 742 StandardError, 742 перехват, 715 заключительные операции, 703 идиомы, 756 sys.exc_info, 759 запуск тестов в рамках единого процесса, 758 исключения не всегда являются ошибками, 756 отладка с помощью внешних инструкций try, 757 передача сигналов из функций по условию, 756 использование, 751 на основе классов, 735 в сравнении с исключениями на основе строк, 736 определение текста исключения, 743 передача данных и поведения в экземплярах, 744 преимущества, 738 пример, 736 на основе строк, 734 назначение, 703 необычное управление потоком выполнения, 703 обработка ошибок и особых ситуаций, 703 обработчик исключений по умолчанию, 705 повторное возбуждение исключений с помощью инструкции raise, 724 пример, 704 развивитие, 702 советы по применению исключений, 760 избегайте пустых предложений except, 761 используйте категории, 763 что должно быть обернуто, 760 типичные проблемы, 764 уведомления о событиях, 703 искусственный интеллект, 46 исполняемые сценарии в UNIX, 81 источники документации, 364 dir, функция, 365, 366 __doc__, атрибут, 367 help, функция, 365 PyDoc help, функция, 369, 372 отчеты в формате HTML, 372 вебресурсы, 365, 376 комментарии #, 365 отчеты в формате HTML, 365 печатные издания, 365, 376 стандартный набор руководств, 365, 375 строки документирования, 365, 367, 368 определяемые пользователем, 367 стандарты, 368 исходный код, компиляция, 62 итераторы, 342, 459 StopIteration, исключение, 345 выражениягенераторы, 465 другие контексты итераций, 347 других встроенных типов, 346 и встроенные типы, 464 и сканирование файлов, 343 итерационный протокол, 345 несколько итераторов в одном объекте, 613 определяемые пользователем, 349, 610 файлов, 344 итерации альтернативы, 466 хронометраж, 466 перегрузка, 609 протокол, 132 итерационный протокол, 345 К кавычки, 122 каналы, 136 каталоги стандартной библиотеки, 492 категории, на основе классов, 763 Алфавитный указатель 833 категории типов, 211, 252 отображения, 212 последовательности, 212 числа, 211 квадратные скобки, 282 классификация объектов, 252 классы, 562, 565, 567 __bases__, атрибут, 628 атрибуты, 578, 603 возможности адаптация через наследование, 563 композиция, 562 множество экземпляров, 563 наследование, 562 перегрузка операторов, 563 вызовы методов классов, 567 и их хранение, 647 и модули, 659 как записи, 639 множественное наследование, 649 модули, 584 нового стиля, 668 __getattribute__, метод, 676 __slots__, атрибут, 673 другие расширения, 673 ромбоидальное наследование, 669 пример, 670 явное разрешение конфликтов имен, 671 свойства, 674 статические методы и методы класса, 673 операции присваивания внутри инструкции class, 578 определяемые пользователем, 138 основы программирования, 577 вызов объектов, 579 множество экземпляров, 577 self, 579 конкретные элементы, 579 наследование, 579 поведение по умолчанию, 578 пример, 579 переопределение операторов языка Python, 586 пример, 587 переопределение операторов языка Python, 586 пример, 587 программирование, 595 пример, 631 псевдочастные атрибуты, 665 для чего нужны, 666 смеси, 650 создание деревьев классов, 568 типичные проблемы, 684 изменение атрибутов, 684 методы, классы и вложенные области видимости, 687 многослойное обертывание, 689 множественное наследование, 685 шаблоны проектирования, 637, 661 перегрузка сигнатур вызова, 638 ключевые аргументы, 436 код компиляция, 62 командная строка интерпретатора Py thon, 77 командные оболочки, 39 комбинированная инструкция присваивания, 293 комбинированное присваивание, 294 комментарии, 78, 150, 319 компилируемые расширения, 767 компиляция Psyco, динамический компилятор, 67 Shedskin, 68 в байткод, 62 комплексные числа, 144, 157 композиция, 562, 643 пример, 643 компоненты интеграция, 44 конец строки, 277 конкатенация, 118, 180 строк, 190 концепции проектирования модулей, 543 функций, 469 копии и ссылки, 254 короткая схема вычислений, 324 кортежи, 90, 113, 134, 240 массив ссылок на объекты, 240 в действии, 241 доступ к элементам по смещению, 240 запятые и круглые скобки, 241 и генераторы списков, 243 литералы кортежей и операции, 241 834 Алфавитный указатель неизменяемые последовательности, 240 преобразования и неизменяемость, 242 упорядоченные коллекции объектов произвольных типов, 240 уровни вложенности, 240 циклы for, 340 переменные цикла, 340 косвенный вызов, 471 круглые скобки, 148, 277, 283, 378 Л лексическая область видимости, 399 литералы длинных целых чисел, 144 чисел, 143 чисел с плавающей точкой, 143 шестнадцатеричные и восьмеричные, 144 логические значения, 163, 327 логические операторы, 146, 155 локальная область видимости, 399 локальные имена, 472 локальные переменные, 395 М максимизировать многократное использование программного кода, 386 математическая обработка данных пользователя, 285 математические и научные вычисления, 45 математические функции, 145 матрицы и генераторы списков, 456 метапрограммы, 544 методы, 119, 599 find, 205 join, 205, 207 replace, 205 возможности, 601 вызов, 204, 599, 600 вызов конструкторов суперклассов, 601 несвязанные , 655 пример, 600 проверка наличия подстроки в конце, 209 проверка содержимого, 209 связанные, 658 экземпляра, 655 способы вызова методов, 600 строк, 204 экземпляра, 680 методы send и next, 463 методы класса, 673, 677 и методы экземпляра, 680 использование, 679 несвязанные, 677 минимизировать избыточность программного кода, 386 мнимая часть, 157 многослойное обертывание в классах, 689 множества, 136, 161 множественное ветвление, 316 множественное наследование, 649, 685 множество экземпляров, 563 модель отношений реального мира, 641 модули, 77, 485, 767 from *, инструкция, 503 from, инструкция, 485, 503 потенциальные проблемы, 507 import as, расширение, 539 import, инструкция, 485, 503 выполняется только один раз, 504 reload, функция, 485 sys.path, список, 494 вложенные, 96 выбор файла модуля, 495 домашний каталог программы, 492 дополнительные возможности выбора, 496, 533 и использование инструкции import, 508 и классы, 584, 659 и пространства имен, 91 изменение значений имен в других файлах, 506 изменение пути поиска, 538 имена файлов, 501 использование, 502 каталоги стандартной библиотеки, 492 концепции проектирования, 543 взаимозависимость, 543 интроспекция, 545 согласованность, 543 метапрограммы, 544 назначение, 486 Алфавитный указатель 835 определение, 501 основы программирования, 501 переменная окружения PYTHON PATH, 492 повторная загрузка, 514 повторное использование программного кода, 486 присваивание, 505 пространства имен, 509 вложенные, 513 дополнение имен атрибутов, 511 путь поиска модулей, 491 разделение системы пространств имен, 486 реализация служб или данных для совместного пользования, 486 синтаксис относительного импорта, 539 смешанные режимы использования, 535 тестирование модулей, 536 содержимое файлов с расширением . pht, 492 создание, 501 сокрытие данных, 533 __all__, переменная, 534 предотвращение копирования, 534 типичные проблемы, 547 from *, инструкция, 550 from, инструкция, 549 reload, функция, 550, 552 импортирование модулей по имени в виде строки, 548 порядок следования инструкций, 547 рекурсивный импорт инструкцией from, 553 тестирование в интерактивной оболочке, 551 эквивалентность инструкций import и from, 506 модули расширений, 502 модульное программирование, 49 Н наследование, 562, 582, 600, 602, 637, 641 __init__, конструктор, 738 абстрактные суперклассы, 605 иерархия, 561 и атрибуты классов, 582 и обращение object.attribute, 582 множественное, 649, 685 модель поиска в дереве наследования, 603 переопределение унаследованных методов, 603 подклассы и суперклассы, 582 приемы организации взаимодействия классов, 604 пример, 583, 670 ромбоидальное, 669 пример, 670 явное разрешение конфликтов имен, 671 создание дерева атрибутов, 602 специализация унаследованных методов, 603 суперклассы, 582 экземпляров, 582 явное разрешение конфликтов имен, 671 настройка переменных окружения, 781 неизменяемость (строки), 119 необычное управление потоком выполнения, 703 несвязанные методы класса, 655, 677 несоставные инструкции, 323 неформатированные строки, 180, 181, 184 подавление экранирования, 184 О обертывание, 760 области видимости, 398, 624 lambdaвыражения, 415 LEGB, правило, 401 аргументы со значениями по умолчанию, 414 вложенные, 687 встроенная, 401, 404 глобальные, 400 замыкания, 412 и вложенные функции, 410 изменения в соседних модулях, минимизация, 408 локальные, 400 объемлющие, 410 объемлющих инструкций def, 401 836 Алфавитный указатель основы, 399 охранение состояния объемлющей области видимости с помощью аргументов по умолчанию, 414 пример, 403 присваивание именам, 400 произвольное вложение, 418 рекурсия, 400 фабричные функции, 412 обработка особых ситуаций, 703 ошибок, 703 проверкой ввода, 286 обработчик исключений по умолчанию, 705 обработчики событий, 621 объединение разделенных инструкций, 323 объектноориентированный язык сценариев, 38 объекты, 168 вызов, 579 два стандартных поля, 169 и функции, 471 несвязанные методы класса, 655 связанные методы экземпляра, 655 система хранения, 45 состояние и поведение, 578 строковые методы, 204 числа, 142, 150 объекты исключений, 733 на основе классов, 733 на основе строк, 733 объемлющие инструкции def, 401 объемлющие области видимости, 410 ООП (объектноориентированное программирование), 46, 561, 564 взаимосвязи типа «имеет», 643 взаимосвязи типа «является», 641 вызовы методов классов, 567 зачем нужны классы, 562 адаптация через наследование, 563 композиция, 562 множество экземпляров, 563 перегрузка операторов, 563 инкапсуляция, 573 классы, 565, 567 многократное использование программного кода, 571 платформы, 574 поиск унаследованных атрибутов, 564 создание деревьев классов, 568 фабрики, 653 зачем нужны, 654 шаблоны проектирования, 574 экземпляры, 565, 567 операторы выражений, 145 группировка подвыражений, 148 определение старшинства, 147 перегрузка, 149 смешивание операторов, 147 смешивание типов, 148 числа, 150 операции над строками, 190 операции присваивания внутри инструкции class, 578 внутри функции, 418 оригинальный модуль string, 209 остаток от деления, оператор, 147 открытое программное обеспечение, 47 отладчики, 770 IDLE, 97 отображения, 212 отрицания оператор, 147 отрицательные смещения в строках, 192 отступы, 320, 377 конец, 278 правила оформления, 278 отсутствие инструкций объявления, 166 очереди, 136 ошибки при работе с функциями, 472 значения по умолчанию, 474 локальные имена, 472 переменные цикла в объемлющей области видимости, 476 функции, не возвращающие результат, 476 П пакеты модулей, 521 инструкции from и import, 526 когда используется операция импортирования, 527 основы операции импортирования, 521 __init__.py, файлы, 523 инициализация пакета, 524 Алфавитный указатель 837 инициализация пространства имен модуля, 524 настройка пути поиска, 522 поведение инструкции from *, 524 точечный путь, 522 пример импортирования, 525 перегрузка операторов, 253, 563, 606 имитация частных атрибутов экземпляра, 617 итераторы несколько итераторов в одном объекте, 613 определяемые пользователями, 610 ключевые идеи, 607 общие методы, 608 __add__, 608 __call__, 608 __cmp__, 608 __del__, 608 __eq__, 608 __getattr__, 608 __getitem__, 608 __iadd__, 608 __init__, 608 __iter__, 608 __len__, 608 __lt__, 608 __or__, 608 __radd__, 608 __repr__, 608 __setattr__, 608 __setitem__, 608 __str__, 608 основные идеи, 586 перегрузка сигнатур вызова, 638 передача аргументов, 398, 418 переменные, 168 DOS, 784 и основные выражения, 150 использование, 167 окружения, 781 создание, 167 типы, 167 цикла, 416 переносимый ANSI C, 48 переносимый прикладной программный интерфейс баз данных, 45 перехват обращения к атрибутам, 615 перечислимые типы данных, 297 платформы, 574 поведение по умолчанию, 578, 714 повторение последовательности, 263 строки, 118 повторное возбуждение исключений с помощью инструкции raise, 724 повторное использование программного кода, 486 подавление экранированных последовательностей, 184 подвыражения, 148 подклассы, 565 замещение унаследованных атрибутов, 603 расширение встроенных типов, 663 поиск унаследованных атрибутов, 564 полиморфизм, 118, 138, 149, 392, 637 intersect, функция, 394 положительные смещения в строках, 191 получение среза, 117 пользовательский интерфейс IDLE, 92 Tkinter, 93, 96 вложенные модули, 96 дополнительные возможности, 97 запуск в Windows, 93 запуск редактируемых файлов, 94 запуск сценариев, 96 многопоточные программы, 96 настройка, 96 отладчик, 97 очистка экрана, 96 ошибки соединения, 97 повторное выполнение команд, 94 подсветка синтаксиса, 94 файлы с исходным текстом, 94 поразрядный сдвиг, чисел, 155 последовательности, 116, 179, 212 отображение функций на, 449 почему программисты используют Py thon, 35 высокая скорость разработки, 36 интеграция компонентов, 36 качество программного обеспечения, 35 переносимость программ, 36 поддержка библиотек, 36 удовольствие, 37 правила именования переменных, 301 предложения инструкции try, 710 формы, 710 838 Алфавитный указатель предупреждения, 756 преобразование строк, 147 приглашение к вводу, 74 приемы организации взаимодействия классов, 604 приемы программирования циклов, 349 приложения баз данных, 45 пример использования объединенной инструкции try, 720 присваивание, 505 классификация имен, 625 именам, 400 кортежей и списков, 293, 294 последовательностей, 293, 294 дополнительные варианты, 296 пробелы, 319 проверка ввода, 286 и вложенных циклов, 454 ошибок, 730 соблюдения ограничений, 725 проверка истинности, 257, 323 короткая схема вычислений, 324 оператор and, 325 оператор or, 324 операторы and и or, 323 понятия Истина и Ложь, 259 программа Hello World, 308 программирование интерпретатор, 58 модульное, 49 системное, 43 строковые методы, 204 программные ловушки импорта, 496 программный код вложенный, 289 многократное использование, 571 повторное использование, 486 самый простой класс на языке Py thon, 589 типичные ошибки программирования, 377 производительность, 63 произвольное вложение областей видимости, 418 пространства имен, 88, 91, 398, 486, 509, 624, 694 вложенные, 513 дополнение имен атрибутов, 511 имена атрибутов, 624 классификация имен, 625 классы, 596 простые имена, 624 разделение системы пространств имен, 486 словари, 627 составные имена атрибутов, 624 ссылки, 630 пространства имен, объявление, 406 профилировщики, 769 процедурная декомпозиция, 386 псевдочастные атрибуты, 665 для чего нужны, 666 пустые предложения except, 710, 761 пустые строки, 180, 319 Р равенство, 257 разделение системы пространств имен, 486 разделяемые ссылки, 171 и аргументы, 419 и изменяемые объекты, 173 и равенство, 175 расширение встроенных типов, 661 встраиванием, 662 наследованием, 663 расширения на языке Python, 766 расширения файлов, 79 режимы сопоставления, 423, 435 переменное число аргументов, 424 по ключам, 424 по позиции, 423 по умолчанию, 424 рекурсия, 400, 630 ромбоидальное наследование, 669 пример, 670 явное разрешение конфликтов имен, 671 С сборка мусора, 49, 130, 170 свободное программное обеспечение, 47 свойства класса, 674 связанные методы экземпляра, 655, 658 связность, 469 сдвига операторы, 146 символы, крупные наборы, 187 подчеркивания, 534 синтаксис относительного импорта, 539 Алфавитный указатель 839 синтаксические правила, 318 системная командная строка и файлы, 77 исполняемые сценарии в UNIX, 81 использование, 79 сканирование файлов, 343 словари, 113, 127, 224 len, функция, 227 pop, метод, 230 update, метод, 230 базовые операции, 227 вложенность, 129 дополнительные методы, 229 доступ к элементам по ключу, а не по индексу, 225 другие способы создания, 235 замечания по использованию, 231 изменение, 228 имитация гибких списков, 232 интерфейсы словарей, 236 использование в качестве записей, 234 итерации и оптимизация, 132 как избежать появления ошибок обращения к несуществующему ключу, 233 ключи, 128 литералы и операции, 226 неупорядоченные коллекции произвольных объектов, 225 операции над последовательностями, 231 операции отображения, 128 отсутствующие ключи, 133 переменная длина, гетерогенность и произвольное число уровней вложенности, 225 пространств имен, 627 сортировка по ключам, 130 структуры разреженных данных, 233 таблица языков, 230 таблицы ссылок на объекты (хеш таблицы), 226 словари для хранения записей, 639 сложение, правостороннее, 619 службы или данные для совместного пользования, 486 смешивание типов, операторы выражений, 148 соглашения по именованию, 303 содержимое файлов с расширением .pht, 492 создание дерева атрибутов, 602 сокеты, 136, 252 составные инструкции, 315 составные типы, 471 специальные режимы сопоставления, 423 специальный случай оформления блока, 283 списки, 113, 123, 215 базовые операции, 218 вложенные, 125 генераторы списков, 126 доступ к элементам по смещению, 216 изменение, 220 индексы, 219 литералы и операции, 217 массивы ссылок на объекты, 216 матрицы, 219 методы, 221 специфичные для типа, 124 операции над последовательностями, 124 относятся к категории изменяемых объектов, 216 присваивание по индексам, 220 присваивание срезам, 220 проверка выхода за границы, 125 срезы, 219 упорядоченные коллекции объектов произвольных типов, 215 часто используемые операции, 224 способы доступа к глобальным переменным, 409 способы оптимизации, 771 сравнение, 257 операторы, 146 языков, 54 средства оптимизации, 67 Psyco, динамический компилятор, 67 Shedskin, 68 ссылки, 168 и копии, 254 на пространства имен, 630 стандартная библиотека, 490 каталоги, 492 статически вложенные области видимости, 411 |