Итак, я создаю сценарий python для отправки электронных писем, а шаблон, содержащий переменные-заполнители (например,% NAME%), которые будут заменены данными из базы данных.
Я использую код ниже, но проблема в том, что переменные, используемые в качестве вторых аргументов замены, не всегда могут что-либо содержать. Если только одна из этих переменных имеет значение None
, сценарий завершается ошибкой InsertError: replace() argument 2 must be str, not None
with open ("D:\Scripts\html.html", "r") as htmlfile:
html = htmlfile.read().replace("%TRACKINGNO%", TrackingNo).replace("%COURIER%", CourierName).replace("%ORDERNO%", OrderNo).replace("%TRACKURL%", URL).replace("%DESPATCHEDDATE%", DespatchedDate).replace("%NAME%", PostalName).replace("%POSTCODE%", PostCode)
Есть ли краткий способ сделать это так, чтобы, если переменная None
, она заменяла заполнитель с пустой строкой?