**kwargs не работает с форматированием строк в Python 3

недавно начал изучать Python 3 и столкнулся с такой проблемой:

введите сюда описание изображения

Но если присвоить значаение (kwargs['color']) к какой-либо переменной, то все рабоает:

введите сюда описание изображения

Так же если использовать старый метод форматирования строк, то тоже работает:

введите сюда описание изображения

Хотелось бы узнать, почему так происходит и как это работает. Это мой первый вопрос на каком-либо форуме, прошу сильно не критиковать в постановке вопроса, надеюсь получить ответ и полезный опыт для будущих свершений))


Ответы (3 шт):

Автор решения: Будни программиста

* arg - массив

** kwargs - словарь

Советую попробовать

def printPetNames(**pets):
   for pet,name in pets.items():
      print(f"{pet}: {name}")

printPetNames(dog="Brock", fish=["Larry", "Curly", "Moe"], turtle="Shelldon")

→ Ссылка
Автор решения: Александр

Не правильное выделение в кавычки

нужно так:

# Одинарные кавычки в двойных или наоборот " '' "
# Одинарные  или двойные кавычки в тройных """ '' """ или """ "" """

alphavit = {"1": "A", "2": "B"}
def main():
    for key, value in alphavit.items():
        string = f"Key {key}: Value {value}"
        print(f"Key {key}: Value {value}")
    print(f"Key {key}: Value {alphavit['2']}")

if __name__ == '__main__':
    main()

Форматирование строк в Python3 PEP498

→ Ссылка
Автор решения: p4nd0r4qq

введите сюда описание изображения

Большое спасибо пользователю Александр'у, ваше решение помогло и спасибо за совет, впредь буду печатать код через соответствующий инструмент! ("Пример кода - {}")

→ Ссылка