def student_details (**details_dictionary):
Здесь вы называете параметр details_dictionary
if 'name' in details :
print ("Name:", details['name'] )
Затем здесь вы пытаетесь использовать что-то с именем details
. Эти имена должны быть одинаковыми. Я предлагаю вам изменить первый на details
. Как правило, вам следует избегать использования таких слов, как dictionary
или list
, которые описывают тип структуры данных в имени вашей переменной. Если вы вернетесь и, например, смените словарь на список, то вам придется отслеживать имена переменных, чтобы изменить их. Вы можете избежать этой дополнительной работы, оставив эту деталь вне имени вашей переменной.