Уведомления

Группа в Telegram: @pythonsu

#1 Сен. 29, 2016 19:08:04

aleks14
Зарегистрирован: 2016-04-08
Сообщения: 42
Репутация: +  0  -
Профиль   Отправить e-mail  

функции

Ф-ция, которая принимает список чисел и число X, и возвращает список всех чисел, которые делятся на X без остатка. есть вот такая вот задачка.

 def fun (a,x):
    a=[]
    m=a/x
    a.append(x)
    return a
fun([1,2,3,4,5,6,7], 3)
не могу решить.подскажите с решением пожалуйста.

Офлайн

#2 Сен. 29, 2016 19:13:51

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

функции

 def fun(a, x):
    result = []
    for value in a:
        if not value %x:
            result.append(value)
    return result



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

Офлайн

#3 Сен. 29, 2016 19:15:59

aleks14
Зарегистрирован: 2016-04-08
Сообщения: 42
Репутация: +  0  -
Профиль   Отправить e-mail  

функции

JOHN_16
спасибо , а без цикла фор можно как то решить?

Офлайн

#4 Сен. 29, 2016 20:06:09

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

функции

 [value for value in a if not value % x]
p.s. здесь цикла нет



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

Офлайн

#5 Сен. 29, 2016 20:32:18

aleks14
Зарегистрирован: 2016-04-08
Сообщения: 42
Репутация: +  0  -
Профиль   Отправить e-mail  

функции

JOHN_16
а без for можно как то код написать.?
c for я разобрался спасибо

Офлайн

#6 Сен. 29, 2016 20:55:05

Rodegast
От: Пятигорск
Зарегистрирован: 2007-12-28
Сообщения: 2840
Репутация: +  186  -
Профиль   Отправить e-mail  

функции

> а без for можно как то код написать.?

Можно.

 >>> def fun(a, x):
...     result = []
...     i = a.pop()
...     if not i%x:
...         result.append(i)
...     if a:
...         result += fun(a, x)
...     return result
... 
>>> fun([1,2,3,4,5,6,7], 3)
[6, 3]



С дураками и сектантами не спорю, истину не ищу.
Ели кому-то правда не нравится, то заранее извиняюсь.

Офлайн

#7 Сен. 29, 2016 23:15:19

4kpt_IV
Зарегистрирован: 2016-01-08
Сообщения: 999
Репутация: +  49  -
Профиль   Отправить e-mail  

функции

 #
func = lambda itr, spc: filter(lambda x: not x%spc, itr)

Офлайн

Board footer

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

Powered by DjangoBB

Lo-Fi Version