Найти - Пользователи
Полная версия: Убрать из списка все отрицательные числа и вывести список
Начало » Python для новичков » Убрать из списка все отрицательные числа и вывести список
1 2 3 4
py.user.next
ZerG
ну del и pop все же не remove
Я использовал проектирование цикла с инвариантом. Такое ты у Лутца не прочитаешь, Лутц - это для слабеньких.
Проектирование цикла с инвариантом максимально прижимает алгоритм к логическим границам и в итоге получается максимально оптимальный код, из которого больше ничего не выжмешь.

Но у вас (ZerG, AD0DE412, marvellik, xam1816) все варианты создают второй список той же величины. Ну, этот список маленький, это ещё незаметно всё, а будет список на миллиард элементов, вы что будете второй миллиард создавать?
xam1816
py.user.next
вы что быдете второй миллиард создавать?
Представим, что первоначальный список нужно оставить без изменения,для выборки данных по другому условию. Большой список, если весь не нужен, думаю лучше фильтровать в потоке, откуда-то ведь он будет появляться.
Конечно, это эффективный метод если первоначальный список больше не нужен
ZerG
py.user.next
Ты все время не учитваешь кому ты отвечаешь. Я сильно сомневаюсь что человек который на форуме спрашивает такой вопрос в состоянии понять твой код = потому при ответе стараюсь максимально упростить код что бы вопрошающий мог что то усвоить
С другой стороны - наличие грамотных ответов только расшираяет кругозор
(при миллиардах мы уйдем на с/rust)
AD0DE412
py.user.next
Но у вас (ZerG, AD0DE412, marvellik, xam1816) все варианты создают второй список той же величины.
а че кому то не ясно это было? (хотя новерное это стоило озвучить все же)
тут возможно нужно делать корекцию на удаленыее индексы типа
 i - correct
само собой при каждом удалении correct эээ коректруется
как то так
py.user.next
xam1816
Представим, что первоначальный список нужно оставить без изменения,для выборки данных по другому условию.
Копию списка ты можешь сделать перед выборкой, если тебе когда-то нужна копия. Если же выборка всегда генерирует новый список, то при подаче тысяч списков, которые приходят по сети в неизвестном количестве, у тебя будет забита память просто этими ненужными копиями. Чтобы это оптимизировать, тебе придётся писать заново эту функцию, убирая из неё создание копии списка.

ZerG
Ты все время не учитваешь кому ты отвечаешь. Я сильно сомневаюсь что человек который на форуме спрашивает такой вопрос в состоянии понять твой код = потому при ответе стараюсь максимально упростить код что бы вопрошающий мог что то усвоить
Так ты быстро придёшь к школе программирования, которая просто продаёт курс программирования, в котором ничего из программирования нет. Сейчас вот море этих школ, которые и детей учат, и взрослых учат. Результат такой школы что из себя представляет? Ученик в ней учится у полных дураков, вот буквально, так как в таких школах продаётся не обучение, а продаётся бумажка с красивыми буквами, с желанным текстом. То есть там даже нет программистов, так как они туда не приходят преподавать. И вот такой выпускник с бумажкой потом приходит на собеседование, если у него получилось что-то там наврать в резюме и его пригласили на собеседование. Ну, как он составляет резюме, - это отдельный вопрос, потому что, нихера не зная, он проходит обучение по составлению резюме. Это он составляет резюме и приходит с его помощью на первое собеседование. И вот он на этом собеседовании сидит и мычит что-то. А что он расскажет? Знать он ничего не знает. Уметь он ничего не умеет.
Вот ты предлагаешь делать вот таких ребяток. Типа не надо им ничего рассказывать; главное, чтобы они увлеклись, заинтересовались, поверили в себя.
Это будут просто толпы поверивших в себя долбоёбов, не способных написать ни одной программы.

А что делаю я: я когда-то сам учился и очень часто натыкался на снобов. Где они сейчас, это другой вопрос. Ну, обычно они никто и нигде. Свои сертификаты, которыми они тогда гарцевали и мерились, они засунули себе в очко, это на сегодняшний день. Ну, то есть, время этих сертификатов прошло, и сегодня эти сертификаты не модные стали. А куда можно деть сертификат, который вышел из моды, - можно только скрутить его в трубочку и вставить в одно место, так как больше он никого не интересует, даже бывших соперников сертификатных. Так они и закончили. А понтов было дохуя. Ты даже не представляешь сколько. Ну, только вот корабли их не бороздят просторы Вселенной. Обосрались и сгинули вместе со своими рассказами про то, какие они крутые.
Поэтому я так не делаю, хотя мог бы, так как мне мой сегодняшний уровень позволяет посылать всех направо и налево - в поисковую систему, в книжки, в вузы.

То есть я никогда не скажу ему типа “вот ты код не умеешь писать и идёшь не в ту сторону вообще - так это хорошо!”, потому что приведёт это к его полному уничтожению. Он будет думать, что, чтобы программистом быть, это надо на работу устроиться в какую-нибудь компанию, где программы делают. А то, что он там будет чай разносить и ботинки чистить, ползая на коленях под столом, для него это будет нормальной карьерой программиста. А девушка будет ещё и в жопу давать. Программистка великая, по типу тех, что в Яндексе работают, - кучи дур каких-то. Говнокодерство налево и направо. И это типа нормально у них уже, что одна хуйня не работает, вторая хуйня не работает, что много чего там не работает уже. Вот пару недель назад сломали ya.ru, теперь эта идиотская хуйня всё время пустую страницу показывает. Какой-то дурак решил там что-то новое вставить. Но он дурак, поэтому получилась пустая страница.

Вот я против этого. Я против размножения дураков каких-то, верящих в себя просто так на пустом месте. Поэтому я их учу правильным направлениям, а не абы каким. Я не хочу, чтобы они работали в Яндексе; я хочу, чтобы они создавали программы и эти программы оставались и жили.
ZerG
Где это я говорил не давать правильный код?
Наоборот я всегда за то что бы были разные уровни ответов - ведь пост читают все а не только
двое. Так что ты меня с кем то спутал.
Однако если вопрос из ряда как словарь почистить то надо расписать что бы человек не только
скопировал рабочий вариант но и понял свою ошибку. С другой стороны - если бы эти додики читали
Лутца а не смотрели свои педоролики педоблоггеров - таких вопросов бы и небыло.
AD0DE412
 a = [91, -32, 67, -4, -91, 63, 56, 40, -45, 72, 0]
b = 0
def my_sort():
    global b
    b += 1
a.sort(key=lambda x: x > 0) # не ну а чему не так? скорость то вроде обещена си -шная
for i in a:
    if i < 0:
        my_sort()
    else:
        break
for i in range(b):
    a.remove(a[0])
    # a.pop(0)
print(a) # ~> [0, 91, 67, 63, 56, 40, 72]
чудеса алгаритмики кхм кхм )))
зы эээ не делайте так как это шутка на самом деле эээ но работущая
FishHook
AD0DE412
не ну а чему не так?
а какова вычислительная сложность хорошего алгоритма сортировки?
AD0DE412
ужасная ) чесно говоря я не знаю как подсчитать
ps можете подсказать хоть примерно? скока )

upd
O(n log n)?
FishHook
AD0DE412
O(n log n)?
допустим, ну и зачем O(n) превращать в O(n log n), объясните бога ради?
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB