Нужна помощь в отладке HTML-генератора Python
Вопрос
Предполагается, что программа принимает вводимые пользователем данные, преобразует их в HTML и передает в буфер обмена.
Запустите программу с помощью Welcome_msg().
Если вы введете 1 в главном меню, вы сможете создать тег привязки.Вы добавите текст ссылки, URL-адрес, а затем заголовок.После ввода заголовка возникают следующие ошибки:
File "<pyshell#23>", line 1, in <module>
welcome_msg()
File "C:\Python26\html_hax.py", line 24, in welcome_msg
anchor()
File "C:\Python26\html_hax.py", line 71, in anchor
copy_to_clipboard(anchor_output)
File "C:\Python26\html_hax.py", line 45, in copy_to_clipboard
wc.SetClipboardData(win32con.CF_TEXT, msg)
error: (0, 'SetClipboardData', 'No error message is available')
Вот код:http://pastie.org/398163
Что вызывает ошибки выше?
Решение
В вашей make_link
функция, которую вы создаете link_output
, но на самом деле вы не возвращаете его в качестве результата функции.Использовать return
сделать это:
def make_link(in_link):
...
if title == '':
link_output = ...
else:
link_output = ...
return link_output
Таким образом, вы получаете значение, передаваемое в ваш anchor_output
переменная здесь:
anchor_output = make_link(anchor_text)
Это было None
потому что функция не вернула никакого значения и установила буфер обмена в None
неуспешный.Поскольку функция возвращает реальную строку, она должна работать как положено.