Python

Помогите пожалуйста с созданием словаря в Python 3

имеется список имен друзей friends = ['Лёша', 'Коля', 'Нина']
создайте словарь, где ключами являются имена ваших друзей, а значениями их дата
рождения в формате день.месяц.год;
- в цикле for печатает в командную строку имена только тех друзей, которые родились
летом или зимой и даты их рождения
 friends = ['Лёша', 'Коля', 'Нина'] 
birth = ['07.01.90', '27.06.90','12.04.90']
d = dict(zip(friends,birth))
for i, k in d.items():
k = k.split('.')
if k[1] in ['12','01','02','06','07','08']:
print(i,':','.'.join(k))
Станислав К.
Станислав К.
5 840
Лучший ответ
И где эту дату рождения брать?

Вариант с получением со стандартного ввода:
 from datetime import datetime
friends = ['Лёша', 'Коля', 'Нина']
summer_winter = { 1, 2, 6, 7, 8, 12 }
info = { name: datetime.strptime(input(name + ', дата рождения: '), '%d.%m.%Y') for name in friends }
print(*(name for name, bd in info.items() if bd.month in summer_winter), sep = '\n')

Вариант "придумать":
 from datetime import datetime
from random import randint as r
friends = ['Лёша', 'Коля', 'Нина']
summer_winter = { 1, 2, 6, 7, 8, 12 }
info = { name: datetime.strptime(f'{r(1600, 2023)} {r(1, 365)}', '%Y %j') for name in friends }
print(*(f"{name}: {datetime.strftime(bd, '%d.%m.%Y')}" for name, bd in info.items()))
print(*(name for name, bd in info.items() if bd.month in summer_winter), sep = '\n')
Здесь в начале выводятся эти сгенерированные даты, чтоб было понятно, какие они.
Олег Иванов
Олег Иванов
87 571
Роман Шилов придумать
Код для создания словаря и печати имен друзей, родившихся летом или зимой:

```python
friends = {'Лёша': '01.05.1990', 'Коля': '15.12.1992', 'Нина': '10.08.1995'}

for name, birthday in friends.items():
month = int(birthday.split('.')[1])
if month in [12, 1, 2, 6, 7, 8]:
print(name, birthday)
```

В данном примере мы создали словарь friends, где ключами являются имена друзей, а значениями - их дата рождения в формате день.месяц.год. Затем мы проходимся по каждому элементу словаря с помощью метода items() и извлекаем имя и дату рождения. Далее мы разбиваем дату рождения на отдельные части и извлекаем месяц. Если месяц рождения находится в списке зимних или летних месяцев, то мы печатаем имя друга и его дату рождения.
 dr = { 
'Лёша': '01.03.1995',
'Коля': '10.07.1992',
'Нина': '25.12.1990'
}
for friend, drs in dr.items():
month = int(drs.split('.')[1])
if month in [12, 1, 2, 6, 7, 8]:
print(friend, drs)