Я знаю, что этот вопрос задан раньше, но я не могу заставить себя работать. Может ли кто-нибудь помочь мне с этим?TypeError: объект «NoneType» не является итерируемым - Python
import sys
class Template:
def processVariable(self, template, data):
first = template.find('{{')
second = template.find('}}')
second = second + 2
out = template[first+second]
assert[out.startswith('{{')]
out = out.strip('{}')
rest = template[second:]
if out in data:
newstring = data[out]
return(rest, newstring)
else:
print "Invalid Data Passed it"
t = Template()
vars = {
'name': 'Jane',
'course': 'CS 1410',
'adjective': 'shimmering'
}
(rest, out) = t.processVariable('{{name}} is in {{course}}', vars)
Это ошибка я получаю:
File "template.py", line 28, in <module>
(rest, out) = t.processVariable('{{name}} is in {{course}}', vars)
TypeError: 'NoneType' object is not iterable
Я понимаю NoneType, но это из-за моего цикл или я просто пропустить что-то простое? Заранее спасибо!
Мой код будет передан в поле, чтобы мой учитель мог запустить код против него, и он пройдет или провалится. Это то, что его код будет работать:
import Candidate
t = Candidate.Template()
vars = {
'name': 'Jane',
'course': 'CS 1410',
'adjective': 'shimmering'
}
(rest, out) = t.processVariable('{{course}} is {{adjective}}', vars)
print 'rest is: [' + rest + ']'
print 'out is : [' + out + ']
, что он должен вернуть это:
rest is: [ is in {{course}}]
out is : [Jane]
вернет Да или Нет, если он работал.
Я не вижу цикл там. Вы отправили полный код? –
Я имел в виду заявление if ... извините –