#python #string #dictionary
Вопрос:
У меня есть строка и список словарей:
body = "Next, we wil give you detailed information about each case: %s"
feature_list = [{'FEATURE_NAME': 'FT02', 'Number of users who tested it ': 30, 'Number of problems detected' : 2},
{'FEATURE_NAME': 'SW045', 'Number of users who tested it ': 5, 'Number of problems detected' : 0}
{'FEATURE_NAME': 'SW04', 'Number of users who tested it ': 23, 'Number of problems detected' : 8}]
Я хочу создать новую строку, подобную этой :
newbody = """
Next, we wil give you detailed information about each case :
{'FEATURE_NAME': 'FT02', 'Number of users who tested it ': 30, 'Number of problems detected' : 2}
{'FEATURE_NAME': 'SW045', 'Number of users who tested it ': 5, 'Number of problems detected' : 0}
{'FEATURE_NAME': 'SW049', 'Number of users who tested it ': 23, 'Number of problems detected' : 8}]
"""
Я попытался повторить список, но при этом я получаю только последний словарь в строке. Я знаю, что можно дать список таким, какой он есть, но это выглядит очень некрасиво и трудно читается.
Комментарии:
1. Можете ли вы показать нам, как вы пытались повторить и что вы получили в результате, по сравнению с тем, что вы «хотите» получить?
Ответ №1:
соедините элементы feature_list
, а затем распечатайте
body = "Next, we wil give you detailed information about each case:"
feature_list = [{'FEATURE_NAME': 'FT02', 'Number of users who tested it ': 30, 'Number of problems detected' : 2},
{'FEATURE_NAME': 'SW045', 'Number of users who tested it ': 5, 'Number of problems detected' : 0},
{'FEATURE_NAME': 'SW04', 'Number of users who tested it ': 23, 'Number of problems detected' : 8}]
features = 'n'.join(str(feature) for feature in feature_list)
print(f'{body}n{features}')
Обратите внимание, что будет гораздо лучше сделать красивую строку вместо отображения диктатора.