Advertisement
Guest User

Untitled

a guest
Sep 19th, 2019
111
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.65 KB | None | 0 0
  1. DATABASE = {
  2. 'Сергей': 'Омск',
  3. 'Соня': 'Москва',
  4. 'Миша': 'Москва',
  5. 'Дима': 'Челябинск',
  6. 'Алина': 'Красноярск',
  7. 'Егор': 'Пермь',
  8. 'Коля': 'Красноярск'
  9. }
  10.  
  11.  
  12. def format_count_friends(count_friends):
  13. if count_friends == 1:
  14. return '1 друг'
  15. elif 2 <= count_friends <= 4:
  16. return f'{count_friends} друга'
  17. else:
  18. return f'{count_friends} друзей'
  19.  
  20.  
  21. def process_query(query):
  22. name = query.split(", ")
  23. if name[0] == "Анфиса":
  24. return process_anfisa(name[1])
  25.  
  26.  
  27. def process_anfisa(query):
  28. if query == 'сколько у меня друзей?':
  29. count_string = format_count_friends(len(DATABASE))
  30. return f'У тебя {count_string}'
  31. elif query == 'кто все мои друзья?':
  32. friends_string = ', '.join(DATABASE.keys())
  33. return f'Твои друзья: {friends_string}'
  34. elif query == 'где все мои друзья?':
  35. unique_cities = set(DATABASE.values())
  36. cities_string = ', '.join(unique_cities)
  37. return f'Твои друзья в городах: {cities_string}'
  38. else:
  39. return '<неизвестный запрос>'
  40.  
  41.  
  42. def runner():
  43. queries = [
  44. 'Анфиса, сколько у меня друзей?',
  45. 'Анфиса, кто все мои друзья?',
  46. 'Анфиса, где все мои друзья?',
  47. 'Анфиса, кто виноват?'
  48. ]
  49.  
  50. for query in queries:
  51. print(query, '-', process_query(query))
  52.  
  53.  
  54. runner()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement