我在python中有一个变量'text',它包含一个很长的字符串。我有一个词典,其关键是一个单词/一组词,值是一个网址。我需要使用django显示这个变量'text',创建文本中所有单词/单词组的超链接,这些单词也在dict中。该链接已作为值存储在dict中。
text =“taj mahal在印度”
my_dict = {'taj mahal':'url1','india':'url2'}
使用django显示此文本,其中'taj mahal'和'india'分别是指向url1和url2的超链接。 我试图使用urlize,但它没有解决问题。
答案 0 :(得分:2)
您可以在replace()
变量上使用text
:
>>> text = "taj mahal is in india"
>>> my_dict = { 'taj mahal':'url1', 'india':'url2' }
>>> for key, value in my_dict.iteritems():
... text = text.replace(key, value)
...
>>> text
'url1 is in url2'
或:
>>> text = "taj mahal is in india"
>>> for key, value in my_dict.iteritems():
... text = text.replace(key, '<a href="%s">key</a>' % value)
...
>>> text
'<a href="url1">key</a> is in <a href="url2">key</a>'
如果您希望将此text
变量传递给模板,请在其上应用safe
过滤器:
{{text|safe}}
希望有所帮助。