Преобразовать словарные записи в одну строку, отформатированную с пробелами между значениями - PullRequest
0 голосов
/ 15 марта 2020

У меня есть словарь с именем, за которым следуют 3 разных числа. Мне нужна функция для преобразования словарных записей в одну строку или в список, а затем в одну строку. И тогда мне нужно отформатировать строку так, чтобы она была (john [100, 1550.0, 46.5]) быть (John 100 1550.0 46.5). (то есть с несколькими пробелами и без запятых или квадратных скобок).

Я пытался создать пустые списки, чтобы помочь, но я думаю, что я довольно далеко:

outlist = [количество, цена , скидка]

Мой словарь: orders [name] = outlist

def make_string_from_list():
        temp = []
        orderslist = []
        for key, value in orders.items():
            temp = [key,value]
            orderslist.append(temp)
        str1 = ''.join(str(e) for e in orderslist)
        print(str1)

, поэтому при вводе имени и количества будет возвращено имя, количество, цена заказа и скидка

1 Ответ

1 голос
/ 15 марта 2020

Предполагая, что ваш вводный дикт выглядит так:

input_dict = {
    'name': [value1, value2, value3],
    ....
}

Я бы использовал такую ​​функцию, как эта:

def format_dict(input_dict):
    for name, values in input_dict.items():
        print('{name} {values}'.format(
            name=name,
            values=' '.join([str(v) for v in values])
        ))

Надеюсь, это поможет!

...