Вы также можете объявить его безопасным HTML из кода:
from flask import Markup
value = Markup('<strong>The HTML String</strong>')
Затем передать это значение в шаблоны, и им не нужно |safe
его.
Используя понимание списка, вы можете сделать что-то вроде этого:
def getUrl(keyword):
return [dict[key] for key in dict.keys() if keyword in key]
, если я вызову это с помощью ключевого слова «= черный», он вернёт:
['https://kith.com/products/hoka-one-tor-ultra-high-2-wp-black', 'https://kith.com/products/adidas-originals-yung-1-core-black-white']
. URL-адреса, соответствующие ключам, содержащим keyword
.
Если у вас более одного keyword
, это должно сработать:
def getUrl(keywords):
return [dict[key] for key in dict.keys() if len([keyword for keyword in keywords if keyword in key])>0]
, если я вызову это с помощью keywords = ['black','ultra']
, это вернет:
['https://kith.com/products/hoka-one-tor-ultra-high-2-wp-black', 'https://kith.com/products/adidas-originals-yung-1-core-black-white']
вернуть []
, если ключи не найдены.
Вы можете перебирать ключи словаря так:
for item in dic:
if searchterm in item:
print('do something')
Если вы хотите создать функцию, которая берет список ключевых слов и проверяет, что каждое ключевое слово представлено в значении, вы можете сделать что-то вроде этого.
keywords = ['black', 'ultra']
def dict_search(list_of_keywords):
for key in dict.keys():
if all(x in key for x in list_of_keywords):
return(key)
In [1]: dict_search(keywords)
hoka one tor ultra high 2 wp boot - black