Как передать предопределенное значение переменной в часть предопределенной жестко закодированной строки в Python? - PullRequest
0 голосов
/ 11 октября 2019

Ниже приведена жестко закодированная строка, которую я прочитал из нашей таблицы конфигурации в MySql. (И в нашей базе данных много жестко закодированных {}, я не могу перейти к mysql, чтобы распознать все переменные и обработать их вручную вscript.)

    string_from_sql_table = '/distribution/{partner}/{process_date}/' 

В моем скрипте python ниже предопределенных переменных.

    from datetime import datetime
    string_from_sql_table = '/distribution/{partner}/{process_date}/' #to keep simple, didn't include code to read the string from mysql table. 
    partner = 'startupco'
    process_date = datetime.today().strftime('%Y%m%d_%H%M')

При выводе (string_from_sql_table) я получил вывод ниже:

    /distribution/{partner}/{process_date}/

Как получить результат ниже ожидаемого без изменения input string_from_sql_table или изменения input string_from_sql_table:

    /distribution/startupco/20191011_1317/

1 Ответ

2 голосов
/ 12 октября 2019

Простой

'/distribution/{partner}/{process_date}/'.format(
    partner = 'startupco', 
    process_date = datetime.today().strftime('%Y%m%d_%H%M')
)

Подробнее о теме здесь https://docs.python.org/3/library/stdtypes.html#str.format

...