Главная страница
Навигация по странице:

  • Сценарий для заполнения базы данных shelve объектами Python

  • Сценарий для вывода и изменения базы данных shelve, созданной предыдущим сценарием

  • Алфавитный указатель Специальные символы

  • Математический анализ. 3е издание


    Скачать 4.86 Mb.
    Название3е издание
    АнкорМатематический анализ
    Дата04.02.2022
    Размер4.86 Mb.
    Формат файлаpdf
    Имя файлаpython_01.pdf
    ТипДокументы
    #351981
    страница96 из 98
    1   ...   90   91   92   93   94   95   96   97   98

    Who are you?

    "
    else:
    print "

    Hello %s!

    " % cgi.escape(form['user'].value)
    print "

    Решения упражнений
    823
    curs.execute('drop database testpeopledb')
    except:
    pass # Отсутствует
    curs.execute('create database testpeopledb')
    curs.execute('use testpeopledb')
    curs.execute('create table people (name char(30), job char(10), pay int(4))')
    curs.execute('insert people values (%s, %s, %s)', ('Bob', 'dev', 50000))
    curs.execute('insert people values (%s, %s, %s)', ('Sue', 'dev', 60000))
    curs.execute('insert people values (%s, %s, %s)', ('Ann', 'mgr', 40000))
    curs.execute('select * from people')
    for row in curs.fetchall():
    print row curs.execute('select * from people where name = %s', ('Bob',))
    print curs.description colnames = [desc[0] for desc in curs.description]
    while True:
    print '' * 30
    row = curs.fetchone()
    if not row: break for (name, value) in zip(colnames, row):
    print '%s => %s' % (name, value)
    conn.commit() # Сохранить добавленные записи
    # Сценарий для заполнения базы данных shelve объектами Python
    rec1 = {'name': {'first': 'Bob', 'last': 'Smith'},
    'job': ['dev', 'mgr'],
    'age': 40.5}
    rec2 = {'name': {'first': 'Sue', 'last': 'Jones'},
    'job': ['mgr'],
    'age': 35.0}
    import shelve db = shelve.open('dbfile')
    db['bob'] = rec1
    db['sue'] = rec2
    db.close()
    # Сценарий для вывода и изменения базы данных shelve,
    # созданной предыдущим сценарием
    import shelve db = shelve.open('dbfile')
    for key in db:
    print key, '=>', db[key]
    bob = db['bob']
    bob['age'] += 1
    db['bob'] = bob db.close()

    Алфавитный указатель
    Специальные символы
    : символ двоеточия, 276, 377
    #, комментарии, 365
    % (остаток/формат) оператор, 147
    & (побитовое И) оператор, 146
    * (умножение) оператор, 147
    / (деление) оператор, 147
    << (сдвиг влево) оператор, 146
    == (проверка равенства) оператор, 175,
    257
    ^ (побитовое исключающее ИЛИ) оператор, 146
    | (побитовое ИЛИ) оператор, 146
    …, приглашение к вводу, 76
    >> (сдвиг вправо) оператор, 146
    >>>, приглашение к вводу, 74, 77
    A
    abs, функция, 159
    __add__, метод, 587, 607, 608
    __all__, переменная, 534
    all, функция, 348
    and, оператор, 146, 323
    any, функция, 348
    Apache, 47
    apply, функция, 447
    applyподобный синтаксис вызова, 448
    ArithmeticError, исключение
    (встроенное), 742
    assert, инструкция, 275, 701, 725
    проверка соблюдения ограничений,
    725
    AssertionError, исключение, 725
    AttributeError, исключение, 616
    B
    __base__, атрибут, 591
    __bases__, атрибут, 628
    bool, тип данных, 163
    Boolean, 136
    break, инструкция, 275, 332, 334
    __builtin__, модуль, 159, 401, 404
    C
    C, язык программирования, интеграция, 50
    C++, язык программирования, 40, 50
    __call__, метод, 608, 620
    chr, функция, 453
    __class__, атрибут, 591, 628
    class, инструкция, 275, 561, 578, 595
    атрибуты данных, 597
    вложенные инструкции, 596
    общая форма, 596
    пример, 596
    пространство имен, 596
    сравнение с именами в модуле, 596
    сравнение с функциями, 596
    classtree, функция, 630
    __cmp__, метод, 608
    COM, поддержка в MS Windows, 44
    contextlib, модуль, 730
    continue, инструкция, 275, 332, 334
    CPython, 65
    csh, командная оболочка, 784
    D
    Dabo, 43
    __debug__, флаг, 725
    def, инструкция, 275, 387, 389, 599
    return, yield, 386
    и lambda, 441
    del, инструкция, 275
    __del__, метод, 608, 623

    Алфавитный указатель
    825
    __dict__, атрибут, 590, 627, 649
    dict, функцияконструктор, 356
    dir, функция, 90, 121, 366
    distutils, 498
    Django, 44
    __doc__, атрибут, 367, 657
    Doctest, 769
    E
    Eclipse, интегрированная среда разработки, 98, 769
    else, инструкция, 335
    __enter__, метод, 729
    enumerate, функция, 356
    env, команда в UNIX, 82
    __eq__, метод, 608
    eval, функция, 64, 158, 432
    использование функции eval для строк в объекты, 249
    except, предложение инструкции try,
    710
    Exception, исключение (встроенное),
    742
    exec, инструкция, 275
    exec, функция, 64
    execfile(module.py), встроенная функция, 92
    __exit__, метод, 729
    F
    False, предопределенное имя, 163
    FIFO, файлы, 252
    filter, функция, 331, 454
    find, метод, 205
    for, циклы, 337
    readlines, метод, 346
    вложенные, 341
    внутри функции, 393
    и генераторы списков, 458
    итераторы, 345
    кортежи, 340
    переменные цикла, 340
    общий формат, 337
    строки, 339
    типичные варианты использования,
    339
    for/else, инструкция, 275
    freeze, 69, 770
    from *, инструкция, 503, 550
    from, инструкция, 275, 503, 549
    и import, 506
    модули, 485
    потенциальные проблемы, 507
    рекурсия, 553
    G
    __getattr__, метод, 608, 615, 648
    __getattribute__, метод, только в классах нового стиля, 676
    __getitem__, метод, 608
    реализует доступ к элементам по индексу, 609
    global, инструкция, 275, 386, 388, 406
    GTK, 43
    H
    help, функция, 121, 205, 369, 372
    hex, функция, 158
    HTML (Hyper Text Markup Language – гипертекстовый язык разметки), 44
    I
    __iadd__, метод, 607, 608
    IDLE, индегрированная среда разработки, 769
    if, инструкции, 315
    множественное ветвление, 316
    общая форма, 315
    простые примеры, 316
    if/elif/else, инструкция, 274
    if/else, трехместное выражение, 325
    import as, расширение, 539
    import, инструкция, 87, 275, 488, 490,
    503
    sys.path, список, 494
    выбор файла модуля, 495
    выполняется только один раз, 504
    домашний каталог, 492
    дополнительные возможности выбора модуля, 496
    запуск, 497
    и from, 506
    и пространства имен, 91
    использование расширений имен файлов, 379
    каталоги стандартной библиотеки,
    492
    когда необходимо использовать, 508
    компиляция, 496

    826
    Алфавитный указатель модули, 485
    переменная окружения PYTHON
    PATH, 492
    примечания к использованию, 91
    содержимое файлов с расширением .
    pht, 492
    __import__, функция, 496, 549
    in, оператор проверки на вхождение,
    146, 331, 342, 348
    IndexError, исключение, 704
    Informix, система управления базами данных, 45
    __init__, метод, 570, 588, 608
    __init__.py, файлы, 523
    int, функция, 158, 196, 286
    intersect, функция, 394
    IronPython, 44, 66
    is not, оператор, 146
    __iter__, метод, 608, 609
    iter, функция, 346, 461
    J
    join, метод, 205, 207, 349
    Jython, 43, 65
    K
    Komodo, индегрированная среда разработки, 99, 769
    ksh, командная оболочка, 784
    L
    lambdaвыражения, 415, 440, 441
    вложенные, 445
    где используются, 442
    и def, 441
    операторы, 146
    тело, 441
    lambda, инструкция, 386
    LEGB, правило, 401, 406, 511
    __len__, метод, 608
    len, функция, 117, 227, 387
    Linux, 47
    list, функция, 174, 207, 243, 349
    __lt__, метод, 608
    M
    map, функция, 331, 348, 354, 449, 465
    и генераторы списков, 459
    и функциональное программирование, 449
    math, модуль, 116
    MFC, 43
    mod_python, 44
    __mul__, метод, 587
    MySQL, система управления базами данных, 45
    N
    __name__, атрибут, 535
    .NET, платформа, 44
    NLTK, пакет, 46
    None, объект, 259
    not in, оператор, 146
    not, оператор, 146
    NotImplementedError, исключение, 606
    NULL, указатель в языке C, 259
    NumPy, расширение, 45, 145
    O
    oct, функция, 158
    ODBC, 45
    open, функция, 135, 136, 387
    __or__, метод, 608
    or, оператор, 146, 323
    Oracle, система управления базами данных, 45
    ord, функция, 453
    OverflowError, исключение
    (встроенное), 742
    P
    Parrot, 70
    pass, инструкция, 275, 332, 333
    PATH, переменная окружения, 73, 782
    Perl, язык программирования, 47, 51
    pickle, модуль, 45, 249, 647
    PMW, 43, 69
    pop, метод, 230
    PostgreSQL, система управления базами данных, 45
    pow, функция, 450
    print, инструкция, 74, 80, 274, 307
    в интерактивном режиме, 76
    и sys.stdout, 311
    перенаправление потока вывода, 308
    программа Hello World, 308
    расширение print >> file, 309

    Алфавитный указатель
    827
    числа, 152
    Psyco, 771
    динамический компилятор, 67
    .py, расширение имен файлов, 78, 95
    py2exe, 69, 770
    PyChecker, 768
    PyDev, модуль расширения, 98
    PyDoc, 121, 365, 768
    help, функция, 365, 369, 372
    отчеты в формате HTML, 365, 372
    pygame, 46, 69
    PyGTK, библиотека создания графического интерфейса, 69
    PyInstaller, 69, 770
    Pylons, 44
    PyPI, вебсайты, 46
    PyPy, 70
    PySol, программа, 46
    Python архитектура программы, 487
    импортирование и атрибуты, 487
    как организована программа, 487
    в сравнении с другими языками программирования, 54
    структура, 273
    Python 3.0, 447, 450, 452
    nonlocal, инструкция, 411
    инструкция print, 312
    исключения, 712
    классы, 669
    сильные стороны языка, 46
    смешивание типов, 222
    Python for .NET, 66
    PythonCard, интегрированная среда разработки, 99
    PYTHONPATH, переменная окружения, 492, 782
    каталоги, 492
    PYTHONSTARTUP, переменная окружения, 782
    PythonWin, интегрированная среда разработки, 99
    PyUnit, 768
    Q
    Qt, 43
    R
    __radd__, метод, 607, 608, 619
    raise, инструкция, 275, 701, 722
    общие формы, 747
    передача дополнительных данных,
    723
    передача сигналов из функций по условию, 756
    random, модуль, 116, 159
    range, функция, 297, 332, 350
    изменение списков, 352
    обход части последовательнсти, 352
    счетные циклы, 350
    raw_input, функция, 285, 312, 756
    readlines, метод, 346
    reduce, функция, 331
    reload, функция, 88, 514, 552
    вместе с инструкцией from, 550
    модули, 485
    основы использования, 515
    подробнее, 516
    пример использования, 516
    примечания к использованию, 91
    replace, метод, 205
    __repr__, метод, 608, 618, 621, 650
    repr, функция, 147, 153, 196
    return, инструкция, 275, 388, 389
    round, функция, 159
    Run Module, пункт меню в среде IDLE,
    92
    S
    self, 579
    set, функция, 136, 161
    __setattr__, метод, 608, 615
    __setitem__, метод, 608
    Shedskin, 68, 771
    shelve, модуль, 647
    SIP, 44
    __slots__, атрибут, в классах нового стиля, 673
    sorted, функция, 131, 348, 379, 465
    SQLite, 45
    SQLObject, 45
    Stackless Python, 70
    StandardError, исключение
    (встроенное), 742
    stdout, объект, 307
    StopIteration, исключение, 461, 611
    __str__, метод, 608, 618, 621
    str, функция, 147, 153
    sum, функция, 348, 465
    SWIG, 44

    828
    Алфавитный указатель
    Swing, 43
    Sybase, система управления базами данных, 45
    SyntaxError, исключение, 715
    sys, модуль, 307
    sys.exc_info, функция, 729, 759
    sys.modules, словарь, 545
    sys.path, список, 494, 538
    sys.stdout, объект, 311
    T
    Tcl, язык программирования, 47
    TCL_LIBRARY, переменная окружения, 782
    Tkinter, 43, 69
    GUI
    API, 562
    графический интерфейс, 93
    TK_LIBRARY, переменная окружения,
    782
    True, предопределенное имя, 163
    try, инструкция обработка ошибок, 288
    отладка с помощью инструкции try,
    757
    try/else, инструкция, 713
    try/except, инструкция, 701, 708, 718
    вложение, 720
    вложенная, 752
    пример использования объединенной инструкции, 720
    try/except/else, инструкция, 709
    try/except/finally, инструкция, 275
    try/finally, инструкция, 701, 708, 716
    вложенная, 753
    программирование завершающих действий, 716
    tuple, функция, 243, 349, 422
    TurboGears, 44
    type, функция, 393
    U
    unittest, модуль, 768
    update, метод, 230
    V
    Vaults of Parnassus, вебсайты, 46
    Vista, установка Python 2.5 из установочного файла формата MSI,
    780
    W
    WebWare, 44
    while, циклы, 330
    имитация циклов while языка C, 338
    общий формат, 331
    примеры, 331
    while/else, инструкция, 275
    win32all, пакет расширений для Win
    dows, 531
    WingIDE, интегрированная среда разработки, 99
    with/as, инструкция, 275, 701, 726
    протокол управления контекстом,
    728
    wxPython, 43, 69
    X
    xmlrpclib, модуль, 46
    Y
    yield, инструкция, 275
    Z
    zip, функция, 350, 354
    конструирование словарей, 355
    ZODB, 45
    Zope, 44
    А
    абсолютный импорт, 540
    абстрактные суперклассы, 605
    автоматическое присвоение расширений файлам в операционной системе Win
    dows, 79
    автоматическое управление памятью, 49
    агрегирование, 643
    адаптация через наследование, 563
    альтернативные реализации
    CPython, 65
    IronPython, 66
    Jython, 65
    анонимные функции, 440
    аргументы значения по умолчанию, 427

    Алфавитный указатель
    829
    и разделяемые ссылки, 419
    извлечение аргументов из коллекции, 429
    изменяемые объекты передаются по указателю, 419
    комбинирование ключей и значений по умолчанию, 430
    неизменяемые объекты передаются по значению, 419
    передача в функции, 388
    передача по ключу, 426, 436, 448
    передача через операцию присваивания, 423
    применение функций, 447
    произвольное количество, 428
    режимы сопоставления переменное число аргументов,
    424
    по ключам, 424
    по позиции, 423
    по умолчанию, 424
    сбор аргументов в коллекцию, 428
    функция поиска минимума, 430
    аргументы командной строки, 196
    аргументы передаются через автоматическое присваивание объектов локальным именам, 418
    аргументы по ключу передача, 448
    аргументы со значениями по умолчанию, 414
    ассоциативные массивы, 225
    атрибуты, 487, 767
    def, инструкция, 597
    имена, 624
    классов, 603
    псевдочастные, 665
    для чего нужны, 666
    экземпляров, 602
    атрибуты данных, 597
    Б
    базы данных, 45
    байткод, 40
    компиляция, 62
    библиотеки утилит, 50
    битовые операторы, 146
    блок else в циклах, 332
    быстрое создание прототипов, 45
    В
    ввод составных инструкций, 76
    вебсценарии, 44
    взаимодействие, 469
    взаимосвязи типа «имеет», 643
    взаимосвязи типа «является», 641
    включение будущих возможностей языка, 534
    вложенные модули, 96
    вложенные области видимости lambda, 445
    вложенные функции, области видимости, 410
    и lambdaвыражения, 415
    вложенные циклы, 454
    внешние инструменты, 767
    возбуждение и обработка собственных исключений, 722
    возможность запуска программ из текстового редактора, 101
    восьмеричные литералы, 144, 158
    вспомогательные модули, 145
    встраивание кода на языке Python в C, 44
    расширение типов, 662
    встроенные инструменты, 49
    типы объектов, 49
    встроенные типы зачем нужны, 112
    расширение, 661
    встраиванием, 662
    наследованием, 663
    встроенные функции abs, 159
    all, 348
    any, 348
    apply, 447
    chr, 453
    dict, 356
    dir, 121, 366
    enumerate, 356
    eval, 158, 432
    execfile(module.py), 92
    False, имя, 163
    filter, 454
    help, 121
    hex, 158
    __import__, 496, 549
    int, 158, 196, 286

    830
    Алфавитный указатель iter, 346, 461
    len, 117, 387
    list, 174, 243, 349
    map, 342, 348, 354, 449, 465
    __name__, атрибут, 535
    oct, 158
    open, 135, 136, 387
    ord, 453
    pow, 450
    random, модуль, 159
    range, 297, 332, 350
    raw_input, 285, 312, 756
    reload, 514
    пример использования, 516
    repr, 147, 153, 196
    round, 159
    set, 136, 161
    sorted, 131, 348, 465
    str, 147, 153
    sum, 348, 465
    sys.path, список, 538
    True, имя, 163
    tuple, 243, 349, 422
    type, 393
    zip, 350, 354
    длинные целые, 156
    принудительное преобразование типов, 149
    числовые литералы, 145
    вызов метода, 599, 600
    вызовы, 386, 390
    встроенные, 100
    обработка, 620
    вызовы функций, 274
    выполнение
    PVM, 63
    виртуальная машина Python, 63
    выполнение программы, 60
    компиляция в байткод, 62
    производительность, 63
    скорость разработки, 64
    выражениягенераторы, 465
    высокая скорость разработки, 38
    выходные параметры, имитация, 422
    Г
    Гвидо ван Россума (Guido van Rossum),
    669
    генераторы, 459
    методы send и next, 463
    пример, 461
    генераторы списков, 348, 357, 452
    выражениягенераторы, 465
    и map, 459
    и кортежи, 243
    и матрицы, 456
    и циклы for, 458
    основы, 358, 453
    проверки и вложенные циклы, 454
    расширенный синтаксис, 360
    файлы, 359
    гибкость кода нарушение, 137
    гибкость объектов, 253
    глобальная область видимости, 399
    глобальные переменные, минимизация количества, 407
    границы блоков, 319, 320
    границы инструкций, 319
    групповое присваивание, 293, 294, 298
    разделяемые ссылки, 298
    Д
    декораторы функций, 623, 649, 681
    пример, 683
    делегирование, 648
    деление истинное, 153
    классическое, 153
    с округлением вниз, 153
    дескрипторы файлов, 136, 252
    деструктор, 623
    динамическая типизация, 49, 114, 166
    отсутствие инструкций объявления,
    166
    переменные, объекты и ссылки, 167
    разделяемые ссылки, 171
    и изменяемые объекты, 173
    и равенство, 175
    сборка мусора, 170
    типы, 169
    динамический компилятор (justin
    time, JIT), 67
    длинные целые, 156
    домашний каталог программы, 492
    дополняющее присваивание, 299
    преимущества, 300
    разделяемые ссылки, 301

    Алфавитный указатель
    831
    З
    завершающие действия с помощью инструкции try/finally,
    716
    заключительные операции, 703
    замыкания, 412
    записи, в виде классов, 639
    запуск Python интерпретатор, 61
    запутать программный код, как не, 444
    зарезервированные слова, 302
    значения по умолчанию, 474
    И
    иерархии типов, 260
    понятий, 273
    избегать воздействий на изменяемые аргументы, 421
    извлечение среза, 180
    изменения внутри функции аргумента, который является изменяемым объектом,
    419
    в соседних модулях, минимизация,
    408
    значений имен в других файлах, 506
    изменяемые объекты, 474
    в операциях присваивания, 378
    изменяемые типы, 212
    имена атрибутов, 403
    имитация частных атрибутов экземпляра, 617
    импортирование и перезагрузка, 86
    и атрибуты, 487
    и области видимости, 512
    пример, 90
    примечания к использованию, 91
    индексация, 117, 180
    инкапсуляция, 573, 637
    инструкции, 273
    в форме выражений, 444
    не имеющие вложенных инструкций, 323
    присваивания, 274
    разделители, 282, 321
    специальные случаи, 282
    инструкции выражений, 305
    типичные, 305
    инструкции импортирования импортирование модулей по имени в виде строки, 548
    синтаксис относительного импорта,
    539
    инструкции присваивания, 292, 293
    групповые, 293, 298
    разделяемые ссылки, 298
    дополнительные варианты, 296
    дополняющие, 299
    преимущества, 300
    разделяемые ссылки, 301
    комбинированные, 293
    кортежей и списков, 293
    последовательностей, 293
    инструменты разработки крупных проектов, 767
    интеграция компонентов, 44
    с языком C, 50
    интегрированные среды разработки, 769
    Eclipse, 98
    Komodo, 99
    PythonCard, 99
    PythonWin, 99
    WingIDE, 99
    интерактивные циклы, 284
    вложенный программный код, 289
    математическая обработка данных пользователя, 285
    пример простого цикла, 284
    проверка ввода, 286
    интерактивный режим, 72
    ввод составных инструкций, 76
    изменение строки приглашения к вводу, 76
    использование, 75
    отступы, 76
    тестирование программного кода, 74
    интернационализация, 187
    Интернетмодули, 44
    интерпретатор, 58
    соглашения по именованию, 303
    интерфейсы, программные, 43
    интроспекция, 545
    информация о состоянии, 138
    исключения, 701, 767
    AssertionError, 725
    except, предложение инструкции try, пустое, 710
    IndexError, 704

    1   ...   90   91   92   93   94   95   96   97   98


    написать администратору сайта