Уведомления

Группа в Telegram: @pythonsu

#1 Ноя. 28, 2014 13:00:05

Nameless95
Зарегистрирован: 2014-11-28
Сообщения: 9
Репутация: +  0  -
Профиль   Отправить e-mail  

Написание функции

Напишите функцию modify_list(l), которая принимает на вход список целых чисел, удаляет из него все нечётные значения, а чётные нацело делит на два. Функция не должна ничего возвращать, требуется только изменение переданного списка, например:

lst =
print(modify_list(lst)) # None
print(lst) #
modify_list(lst)
print(lst) #

lst =
modify_list(lst)
print(lst) #
Функция не должна осуществлять ввод/вывод информации.

Офлайн

#2 Ноя. 29, 2014 03:40:43

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

Написание функции

>>> def f(lst):
...     return [int(i / 2) for i in lst if i % 2 == 0]
... 
>>> f([1, 2, 2, 3, 4, 5, 5])
[1, 1, 2]
>>>



Отредактировано py.user.next (Ноя. 29, 2014 03:42:02)

Офлайн

#3 Ноя. 29, 2014 20:44:20

Nameless95
Зарегистрирован: 2014-11-28
Сообщения: 9
Репутация: +  0  -
Профиль   Отправить e-mail  

Написание функции

Большое спасибо за помощь!

Офлайн

#4 Ноя. 30, 2014 09:22:21

doza_and
От:
Зарегистрирован: 2010-08-15
Сообщения: 4138
Репутация: +  252  -
Профиль   Отправить e-mail  

Написание функции

Nameless95
Функция не должна ничего возвращать
py.user.next
return [int(i / 2) for i in lst if i % 2 == 0]
Nameless95
Большое спасибо за помощь!
Я в недоумении.
def strange_function(a):
    for i in range(len(a))[::-1]:
        if (a[i]%2)>0:
            a.pop(i)
        else:
            a[i]=int(a[i]/2)



Отредактировано doza_and (Ноя. 30, 2014 09:27:01)

Офлайн

#5 Ноя. 30, 2014 11:29:41

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

Написание функции

doza_and
Nameless95
Функция не должна ничего возвращать

Не заметил условие.

>>> def f(lst):
...     i, n = 0, len(lst)
...     while i < n:
...         if lst[i] % 2:
...             lst.pop(i)
...             n -= 1
...         else:
...             lst[i] = int(lst[i] / 2)
...             i += 1
... 
>>> lst = [1, 2, 2, 3, 4, 5, 5]
>>> f(lst)
>>> lst
[1, 1, 2]
>>>



Офлайн

#6 Ноя. 30, 2014 16:45:50

doza_and
От:
Зарегистрирован: 2010-08-15
Сообщения: 4138
Репутация: +  252  -
Профиль   Отправить e-mail  

Написание функции

:) Самое интересное что тот кто вопрос задавал этого не заметил. Наверное он условия своей задачи не читал?



Отредактировано doza_and (Ноя. 30, 2014 16:46:12)

Офлайн

#7 Дек. 15, 2014 15:01:19

Alex2012
Зарегистрирован: 2014-12-15
Сообщения: 4
Репутация: +  0  -
Профиль   Отправить e-mail  

Написание функции

py.user.next
можеш обьяснить свой код?
https://yadi.sk/i/109kDmKAdPMve

Офлайн

#8 Дек. 16, 2014 05:39:41

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

Написание функции

Alex2012
можеш обьяснить свой код?
Набери
help(list.pop)
Метод pop выталкивает элемент из списка и возвращает его. Когда элемент выталкивается, длина списка уменьшается.

А в начале стоит множественное присваивание.
i, j, k = 1, 2, 3
это то же самое, что
i = 1
j = 2
k = 3



Отредактировано py.user.next (Дек. 16, 2014 05:41:23)

Офлайн

#9 Дек. 16, 2014 22:53:08

JOHN_16
От: Россия, Петропавловск-Камчатск
Зарегистрирован: 2010-03-22
Сообщения: 3292
Репутация: +  221  -
Профиль   Отправить e-mail  

Написание функции

doza_and
:) Самое интересное что тот кто вопрос задавал этого не заметил. Наверное он условия своей задачи не читал?
да ну что вы в самом деле :-), посмотрите на соседние темы - сейчас пора сдачи зачетов и экзаменов. Студенты же… им бы зачет и только, зачем даже условия читать.
Именно благодаря таким подходам давно уже образование свелось лишь к получению диплома=корочки, и никаких знаний в умах.



_________________________________________________________________________________
полезный блог о python john16blog.blogspot.com

Офлайн

#10 Дек. 17, 2014 19:59:56

dimy44
От: Евпатория
Зарегистрирован: 2012-04-21
Сообщения: 463
Репутация: +  42  -
Профиль  

Написание функции

В точку. К сожалению.

Офлайн

Board footer

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

Powered by DjangoBB

Lo-Fi Version