Уведомления

Группа в Telegram: @pythonsu

#1 Июль 1, 2022 11:24:33

VladimirDeg
Зарегистрирован: 2022-06-16
Сообщения: 34
Репутация: +  0  -
Профиль   Отправить e-mail  

Использовать функцию map

Здравствуйте!
Дан список:

users_list = [
('Александр', 'ru'),
('James', 'us'),
('Daniella', 'es'),
('Someone', 'unknown country'),
]
нужно получить:
Привет, Александр!
Hello, James!
Hola, Daniella!
Hello, Someone, but I do not know where are you from!

Без map сделал так:
users_list = [
('Александр', 'ru'),
('James', 'us'),
('Daniella', 'es'),
('Someone', 'unknown country'),
]
list_1 = list()
list_2 = list()
for i in users_list:
list_1.append(i[0])
list_2.append(i[1])

def res():
for a in list_2:
if a == "ru":
b = "Привет, "
print(b, list_1[0],"!", sep="")
elif a == 'us':
b = "Hello, "
print(b, list_1[1],"!", sep="")
elif a == 'es':
b = 'Hola, '
print(b, list_1[2],"!", sep="")
elif a == 'unknown country':
b = 'Someone,'
print(b, list_1[3],"but I do not know where are you from!")
res()
Как улучшить код используя map?

Офлайн

#2 Июль 1, 2022 11:31:45

FishHook
От:
Зарегистрирован: 2011-01-08
Сообщения: 8312
Репутация: +  568  -
Профиль   Отправить e-mail  

Использовать функцию map

VladimirDeg
Как улучшить код используя map?
map вообще лучше не использовать, используйте list comprehensions вместо этого



Офлайн

#3 Июль 1, 2022 11:32:40

FishHook
От:
Зарегистрирован: 2011-01-08
Сообщения: 8312
Репутация: +  568  -
Профиль   Отправить e-mail  

Использовать функцию map

VladimirDeg
Как улучшить код
вам нужен словарь {“язык”: “приветствие”}



Офлайн

#4 Июль 1, 2022 13:02:26

py.user.next
От:
Зарегистрирован: 2010-04-29
Сообщения: 9873
Репутация: +  853  -
Профиль   Отправить e-mail  

Использовать функцию map

  
>>> users_list = [
...     ('Александр', 'ru'),
...     ('James', 'us'),
...     ('Daniella', 'es'),
...     ('Someone', 'unknown country'),
... ]
>>> 
>>> greetings_dict = {
...     'ru': 'Привет, {}!',
...     'us': 'Hello, {}!',
...     'es': 'Hola, {}!',
...     'unknown country': 'Hello, {}, but I do not know where are you from!'
... }
>>> 
>>> print(*map(lambda i: greetings_dict[i[1]].format(i[0]), users_list), sep='\n')
Привет, Александр!
Hello, James!
Hola, Daniella!
Hello, Someone, but I do not know where are you from!
>>>



Отредактировано py.user.next (Июль 1, 2022 13:03:48)

Офлайн

#5 Июль 1, 2022 20:28:56

VladimirDeg
Зарегистрирован: 2022-06-16
Сообщения: 34
Репутация: +  0  -
Профиль   Отправить e-mail  

Использовать функцию map

FishHook
map вообще лучше не использовать, используйте list comprehensions вместо этого
Такое задание поставили, что надо использовать map

Спасибо!

Отредактировано VladimirDeg (Июль 2, 2022 08:38:57)

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version