Уведомления

Группа в Telegram: @pythonsu

#1 Ноя. 17, 2011 22:22:16

AlexNasonov
От:
Зарегистрирован: 2011-11-13
Сообщения: 11
Репутация: +  0  -
Профиль   Отправить e-mail  

почему KeyError

Есть простое упражнение:

import web
import os


urls = (
'/hello', 'index'
)
app = web.application (urls, globals ())

PATH = os.path.join(os.path.dirname(__file__), 'templates/')
render = web.template.render (PATH)

class Index (object):
def GET (self):
form = web.input (name="Nobody")
greeting = "Hello, %s" % form.name
return render.index(greeting = greeting)

if __name__ == "__main__":
app.run ()
выдает KeyError. В чем проблема?



Офлайн

#2 Ноя. 18, 2011 00:08:52

sypper-pit
От: Ulan-Ude(msk)
Зарегистрирован: 2009-01-30
Сообщения: 1102
Репутация: +  6  -
Профиль   Отправить e-mail  

почему KeyError

а где вы взяли этот пример

Офлайн

#3 Ноя. 18, 2011 06:26:53

o7412369815963
От:
Зарегистрирован: 2009-06-17
Сообщения: 1986
Репутация: +  32  -
Профиль   Отправить e-mail  

почему KeyError

Это значит что нет искомого ключа (в словаре).

Попробуйте заменить имя класса на index

Офлайн

#4 Ноя. 18, 2011 08:05:08

AlexNasonov
От:
Зарегистрирован: 2011-11-13
Сообщения: 11
Репутация: +  0  -
Профиль   Отправить e-mail  

почему KeyError

sypper-pit
а где вы взяли этот пример
Это пример из книжки Shaw Z.A. - Learn Python the Hard Way, 2nd Edition



Офлайн

#5 Ноя. 18, 2011 08:15:08

AlexNasonov
От:
Зарегистрирован: 2011-11-13
Сообщения: 11
Репутация: +  0  -
Профиль   Отправить e-mail  

почему KeyError

o7412369815963
Это значит что нет искомого ключа (в словаре).

Попробуйте заменить имя класса на index
Заменил. Теперь Traceback выглядит еще страшнее и матерится на invalid syntax Template traceback: File ‘/home/alexnas/python/gothonweb/bin/templates/index.html’, line 16 </html> (index.html, line 16)

код темплейта:
$def with (greeting)

<html>

<head>
<title>Gothons Of Planet Percal #25</title>
</head>
<body>

$if greeting:
I just wanted to say <em style="color: green; font-size: 2em;">$greeting</em>.
$else
<em>Hello</em>, world!

</body>
</html>
Чем ему не угодил </html> вообще не понимаю..



Офлайн

#6 Ноя. 18, 2011 09:10:48

PooH
От:
Зарегистрирован: 2006-12-05
Сообщения: 1948
Репутация: +  72  -
Профиль   Отправить e-mail  

почему KeyError

после $else двоеточие -> $else:



Вот здесь один из первых отарков съел лаборанта. Это был такой умный отарк, что понимал даже теорию относительности. Он разговаривал с лаборантом, а потом бросился на него и загрыз…

Офлайн

Board footer

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

Powered by DjangoBB

Lo-Fi Version