Уведомления

Группа в Telegram: @pythonsu

#1 Дек. 23, 2016 08:37:40

Darksider92
Зарегистрирован: 2016-09-12
Сообщения: 7
Репутация: +  0  -
Профиль   Отправить e-mail  

initdata в книге Лутц

Ребят выручайте такой вопрос модуль initdata сейчас не поддерживается(версия интерпретаторa python 3,5) ? Не могу его подключить((( Как решить данную проблему. За ранние спасибо, за помощь нубу

 dbfilename = 'people-file'
ENDDB  = 'enddb.'
ENDREC = 'endrec.'
RECSEP = '=>'
def storeDbase(db, dbfilename=dbfilename):
    "formatted dump of database to flat file"
    dbfile = open(dbfilename, 'w')
    for key in db:
        print(key, file=dbfile)
        for (name, value) in db[key].items():
            print(name + RECSEP + repr(value), file=dbfile)
        print(ENDREC, file=dbfile)
    print(ENDDB, file=dbfile)
    dbfile.close()
def loadDbase(dbfilename=dbfilename):
    "parse data to reconstruct database"
    dbfile = open(dbfilename)
    import sys
    sys.stdin = dbfile
    db = {}
    key = input()
    while key != ENDDB:
        rec = {}
        field = input()
        while field != ENDREC:
            name, value = field.split(RECSEP)
            rec[name] = eval(value)
            field = input()
        db[key] = rec
        key = input()
    return db
if __name__ == '__main__':
    from initdata import db
    storeDbase(db)

Отредактировано Darksider92 (Дек. 23, 2016 08:40:54)

Офлайн

#2 Дек. 23, 2016 08:41:05

FishHook
От:
Зарегистрирован: 2011-01-08
Сообщения: 8312
Репутация: +  568  -
Профиль   Отправить e-mail  

initdata в книге Лутц

Darksider92
Покажите откуда вы это взяли, это какой-то бред



Офлайн

#3 Дек. 23, 2016 08:43:03

Darksider92
Зарегистрирован: 2016-09-12
Сообщения: 7
Репутация: +  0  -
Профиль   Отправить e-mail  

initdata в книге Лутц

FishHook
Программирование на Python 4 издание 1 том 58 страница.(Марк Лутц)

Офлайн

#4 Дек. 23, 2016 08:55:50

FishHook
От:
Зарегистрирован: 2011-01-08
Сообщения: 8312
Репутация: +  568  -
Профиль   Отправить e-mail  

initdata в книге Лутц

Вы предлагаете мне пойти купить книгу Лутца, чтобы вашу проблему решить?



Офлайн

#5 Дек. 23, 2016 09:11:12

FishHook
От:
Зарегистрирован: 2011-01-08
Сообщения: 8312
Репутация: +  568  -
Профиль   Отправить e-mail  

initdata в книге Лутц





Лавров.jpg



Офлайн

#6 Дек. 23, 2016 09:58:16

Darksider92
Зарегистрирован: 2016-09-12
Сообщения: 7
Репутация: +  0  -
Профиль   Отправить e-mail  

initdata в книге Лутц

FishHook
Книгу я Вам не предлагаю покупать, я указал где я этот пример взял. Спасибо вам большое за помощь, это моя не внимательность. + Вам в карму, очень выручили.

Офлайн

#7 Дек. 23, 2016 10:21:05

FishHook
От:
Зарегистрирован: 2011-01-08
Сообщения: 8312
Репутация: +  568  -
Профиль   Отправить e-mail  

initdata в книге Лутц

Darksider92
Понимаете, когда вам нужна помощь, то это в ваших интересах дать как можно больше подробной информации о вашей проблеме. Если это непонятный момент в книге, то нужно приложить скриншот непонятного места, если у вас возникает ошибка, то нужно показать трейсбэк этой ошибки. Ну и так далее.
Это я вам на будущее.



Офлайн

#8 Дек. 23, 2016 10:48:29

Altair
От:
Зарегистрирован: 2016-12-23
Сообщения: 2
Репутация: +  0  -
Профиль   Отправить e-mail  

initdata в книге Лутц

initdata - это не библиотечный модуль, версия интерпретатора здесь ни при чем.
На странице 55 своей книги Лутц показывает, как записать словарь базы данных в файл, и называет полученный модуль “initdata.py”. Его он и импортирует в вашем примере.
Таким образом, вам нужно создать файл с таким названием и скопировать туда код из примера 1.1:

 # записи
bob = {'name': 'Bob Smith', 'age': 42, 'pay': 30000, 'job': 'dev'}
sue = {'name': 'Sue Jones', 'age': 45, 'pay': 40000, 'job': 'hdw'}
tom = {'name': 'Tom', 'age': 50, 'pay': 0, 'job': None}
# база данных
db = {}
db['bob'] = bob
db['sue'] = sue
db['tom'] = tom
if __name__ == '__main__':  # если запускается, как сценарий
    for key in db:
        print(key, '=>\n ', db[key])

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version