Уведомления

Группа в Telegram: @pythonsu
  • Начало
  • » Python для новичков
  • » Дан одномерный массив числовых значений, насчитывающий N элементов. Исключить все нулевые элементы. [RSS Feed]

#1 Июнь 18, 2013 16:20:59

MountainDew
Зарегистрирован: 2013-06-18
Сообщения: 8
Репутация: +  0  -
Профиль   Отправить e-mail  

Дан одномерный массив числовых значений, насчитывающий N элементов. Исключить все нулевые элементы.

Дан одномерный массив числовых значений, насчитывающий N элементов. Исключить все нулевые элементы. Помогите решить

Офлайн

#2 Июнь 18, 2013 16:36:58

s0rg
От:
Зарегистрирован: 2011-06-05
Сообщения: 777
Репутация: +  25  -
Профиль   Отправить e-mail  

Дан одномерный массив числовых значений, насчитывающий N элементов. Исключить все нулевые элементы.

a = [0,1,2,3,0]
b = filter(bool, a)
print (b)

Офлайн

#3 Июнь 18, 2013 16:57:25

MountainDew
Зарегистрирован: 2013-06-18
Сообщения: 8
Репутация: +  0  -
Профиль   Отправить e-mail  

Дан одномерный массив числовых значений, насчитывающий N элементов. Исключить все нулевые элементы.

у меня выводит : <filter object at 0x0000000002F10470>
что то я напортачила или так и должно быть?

Офлайн

#4 Июнь 18, 2013 17:11:00

alexbadaloff
От: Иваново
Зарегистрирован: 2013-04-11
Сообщения: 198
Репутация: +  16  -
Профиль   Отправить e-mail  

Дан одномерный массив числовых значений, насчитывающий N элементов. Исключить все нулевые элементы.

MountainDew
у меня выводит : <filter object at 0x0000000002F10470>
что то я напортачила или так и должно быть?

Я хотел сразу написать, но всё-таки дождался данного вопроса.
Нужно написать:
print (list(b))

Ибо filter в python3 - это ссылка на итерируемый объект, а не сам объкт.



————————–
Истина где-то рядом

Офлайн

#5 Июнь 18, 2013 17:32:00

MountainDew
Зарегистрирован: 2013-06-18
Сообщения: 8
Репутация: +  0  -
Профиль   Отправить e-mail  

Дан одномерный массив числовых значений, насчитывающий N элементов. Исключить все нулевые элементы.

все, теперь работает. большое спасибо!

Офлайн

#6 Июнь 19, 2013 21:27:53

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

Дан одномерный массив числовых значений, насчитывающий N элементов. Исключить все нулевые элементы.

>>> lst = [0, 1, 2, 0, 3, 0]
>>> 
>>> res = list(filter(None, lst))
>>> res
[1, 2, 3]
>>> 
>>> res = [i for i in lst if i]
>>> res
[1, 2, 3]
>>>



Офлайн

#7 Июнь 20, 2013 09:34:45

MountainDew
Зарегистрирован: 2013-06-18
Сообщения: 8
Репутация: +  0  -
Профиль   Отправить e-mail  

Дан одномерный массив числовых значений, насчитывающий N элементов. Исключить все нулевые элементы.

А каков будет алгоритм реализации задачи без использования специализированных функций?

Офлайн

#8 Июнь 20, 2013 09:48:24

Shaman
Зарегистрирован: 2013-03-15
Сообщения: 1369
Репутация: +  88  -
Профиль   Отправить e-mail  

Дан одномерный массив числовых значений, насчитывающий N элементов. Исключить все нулевые элементы.

А которые функции считать специализированными и почему?

Офлайн

#9 Июнь 20, 2013 10:40:57

alexbadaloff
От: Иваново
Зарегистрирован: 2013-04-11
Сообщения: 198
Репутация: +  16  -
Профиль   Отправить e-mail  

Дан одномерный массив числовых значений, насчитывающий N элементов. Исключить все нулевые элементы.

MountainDew
А каков будет алгоритм реализации задачи без использования специализированных функций?

Идти по массиву, проверяя каждый элемент на равенство с нулём. Далее либо ненулевые складывать в другой массив, либо удалять из исходного нулевые.

Shaman
А каков будет алгоритм реализации задачи без использования специализированных функций?
Я думаю тут имелось ввиду функции, характерные для питона. Или filter и list, можно применить в любом языке?



————————–
Истина где-то рядом

Отредактировано alexbadaloff (Июнь 20, 2013 10:43:10)

Офлайн

#10 Июнь 20, 2013 12:36:11

Shaman
Зарегистрирован: 2013-03-15
Сообщения: 1369
Репутация: +  88  -
Профиль   Отправить e-mail  

Дан одномерный массив числовых значений, насчитывающий N элементов. Исключить все нулевые элементы.

alexbadaloff
Я думаю тут имелось ввиду функции, характерные для питона. Или filter и list, можно применить в любом языке?
Я думаю, выбрав конкретный язык, нужно использовать стандарты данного языка, т.к. некоторые возможности разных языков просто не пересекаются.
Касаемо filter и list: да, почти в любом.

Офлайн

  • Начало
  • » Python для новичков
  • » Дан одномерный массив числовых значений, насчитывающий N элементов. Исключить все нулевые элементы.[RSS Feed]

Board footer

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

Powered by DjangoBB

Lo-Fi Version