Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 02.11.2017, 10:00   #1
likeaballoon
Новичок
Джуниор
 
Регистрация: 02.11.2017
Сообщений: 1
Вопрос функцию, которая принимает список в качестве аргумента и возвращает строку, в которой все элементы списка разделены запятой и пробелом, а перед последним элементом вставлено слово

нужно написать функцию, которая принимает список в качестве аргумента и возвращает строку, в которой все элементы списка разделены запятой и пробелом, а перед последним элементом вставлено слово and.

вот, что получается у меня:

Код:
spam =['apples', 'bananas', 'tofu', 'cats', 'tree']
def spisok ():
    global string
    print('Your list is: ', spam)
    n=len (spam)
    spam.insert (-1, 'and')
  
    string= ', '.join(spam)

spisok ()
print (string)


и выводит следующее :
Your list is: ['apples', 'bananas', 'tofu', 'cats', 'tree']
apples, bananas, tofu, cats, and, tree

как убрать две последние запятые?

______________________
Используйте тег [CODE] (кнопка с решеткой # в форме сообщения) при вставке кода на форум.

Последний раз редактировалось Alex11223; 02.11.2017 в 10:40.
likeaballoon вне форума Ответить с цитированием
Старый 02.11.2017, 10:45   #2
Alex11223
Старожил
 
Аватар для Alex11223
 
Регистрация: 12.01.2011
Сообщений: 19,500
По умолчанию

join'ить с запятой все элементы кроме последнего и потом прибавить and и последний.

ЗЫ в чем смысл выделения функции spisok здесь? Она ж все равно просто выводит что-то print'ом и ничего не возвращает (return).
И имена функций обычно стараются делать глаголами.
https://ru.hexlet.io/blog/posts/naming-in-programming
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом.
Alex11223 вне форума Ответить с цитированием
Старый 02.11.2017, 11:11   #3
Plague
Забанен
Форумчанин Подтвердите свой е-майл
 
Аватар для Plague
 
Регистрация: 01.11.2006
Сообщений: 420
По умолчанию

А если один элемент в списке, что выводить?
Если ничто другое не помогает, прочтите, наконец, инструкцию! Аксиома Кана
Plague вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Функция, которая на вход принимает строку и в качестве результата возвращает ее копию sswt Помощь студентам 23 24.09.2015 08:09
Pascal!Процедуру, которая вставляет в непустой список L пару новых элементов E1 и E2 перед его последним элементом. Nyash Помощь студентам 0 04.03.2015 22:12
Функцию, которая принимает в качестве параметра строку и символ и вычисляет количество таких символов в строке (Delphi) Loqwer78rus Помощь студентам 10 06.05.2014 10:52
Перед строкой содержащей слово, являющееся последним словом по алфавиту во всем тексте, вставить строку (Java) papikyandgan Помощь студентам 8 13.11.2011 17:55
в массиве все максимальные элементы заменить первым элементом, а все минимальные элементы заменить последним элементом Валерия2701 Паскаль, Turbo Pascal, PascalABC.NET 1 12.10.2011 15:49