def is_anyone_in(collection, city):
if city in friends.values():
for name in friends.keys():
if friends[name] == city:
print('В городе ' + city + ' живёт ' + name + '.')
else:
print('Пока никого.')
friends = {
'Серёга': 'Омск',
'Соня': 'Москва',
'Дима': 'Челябинск',
'Алина': 'Хабаровск',
'Егор': 'Пермь'
}
is_anyone_in(friends, 'Хабаровск')
Имя хоста написано кириллицей и Python 3.4 или старее?
Windows: socket.gethostbyaddr(name) fails for non-ASCII hostname
bugs.python.org/issue26227
- Обновить Python
- Переименовать хост
- Либо запускать Django передав ему ip адрес вместо имени хоста
python manage.py runserver 127.0.0.1:8000
UPD:
я попробовал воспроизвести подобную ошибку в среде Win 10 (в VirtualBox) и у меня получилось только в случае
если в файле hosts присутствует алиас с кириллицей и локаль Windows русская.spoiler
Если удалить русский, оставив только английский (на русском только интерфейс системы), то всё ок.
Так-же не удалось воспроизвести ошибку если при запуске указывать ip хоста как 127.0.0.2python manage.py runserver 127.0.0.2:8080
При условии, что в hosts нет алиаса с кириллицей для него.
На чистой системе (установлены только Python 3.7.2 и Pycharm Community, русская локаль) подобной ошибки нет.
Заглянул в исходники socket.py и socketmodule.c
Скорее всего данная особенность связаны с этой частью исходного кода Python на C, а именно PyUnicode_DecodeFSDefault#ifdef MS_WINDOWS /* Issue #26227: gethostbyaddr() returns a string encoded * to the ANSI code page */ return PyUnicode_DecodeFSDefault(name); #else /* Decode from UTF-8 */ return PyUnicode_FromString(name); #endif
Далее, если имя хоста не написано кириллицей и в hosts нет кириллицы следует вывод, что с высокой долей вероятности дело в стороннем софте(антивирус, кривой кряк и т.д.).
{
"one_time": false,
"buttons": [
[
{
"action": {
"type": "text",
"label": "Профиль"
},
"color": "positive"
},
{
"action": {
"type": "text",
"label": "Магазин"
},
"color": "positive"
}
],
[
{
"action": {
"type": "text",
"label": "Склад"
},
"color": "positive"
},
{
"action": {
"type": "text",
"label": "Фарм"
},
"color": "positive"
},
{
"action": {
"type": "text",
"label": "Помощь"
},
"color": "positive"
}
]
]
}